arter97 / exfat-linux

EOL exFAT filesystem module for Linux kernel. Everyone should be using https://github.com/namjaejeon/linux-exfat-oot instead.
Other
262 stars 61 forks source link

there is not enough continue memory for super block. #19

Closed zhuchuanchun closed 4 years ago

zhuchuanchun commented 4 years ago

04-17 02:19:20.788 672 11313 D vold : Totally 87 directories and 18 files. 04-17 02:19:20.788 672 11313 D vold : 04-17 02:19:20.788 672 11313 D vold : File system checking finished. No errors found. 04-17 02:19:20.788 672 11313 D vold : 04-17 02:19:20.788 672 11313 I vold : Check OK 04-17 02:19:20.816 672 11313 E vold : Mount failed; attempting read-only: Out of memory 04-17 02:19:20.818 672 11313 E vold : public:8,97 failed to mount /dev/block/vold/public:8,97: Out of memory

04-17 02:19:20.662 0 0 W Binder : 672_7: page allocation failure: order:4, mode:0x60c0c0(GFP_KERNEL|__GFP_COMP|__GFP_ZERO), nodemask=(null) 04-17 02:19:20.662 0 0 I Binder : 672_7 cpuset=foreground mems_allowed=0 04-17 02:19:20.662 0 0 I : CPU: 7 PID: 11313 Comm: Binder:672_7 Tainted: G S W O 4.19.81-perf+ #1 04-17 02:19:20.662 0 0 I Call trace:
04-17 02:19:20.662 0 0 I : dump_backtrace+0x0/0x1a0 04-17 02:19:20.662 0 0 I : show_stack+0x20/0x30

zhuchuanchun commented 4 years ago

could we use kmalloc instead of kzmalloc in exfat_fill_super() function?

inste commented 4 years ago

@zhuchuanchun how big is your filesystem? How many RAM do you have? It seems that mounting requires 64 kb of contigious memory (order 4), but your OS has not - only switching to vmalloc will really help you.

arter97 commented 4 years ago

The master branch is now rebased to a different base, and all existing previous issues need to be re-evaluated.

https://github.com/arter97/exfat-linux/releases/tag/5.8-1arter97

Please re-open this if you believe the new base is still susceptible to this issue.