{"id":376,"date":"2009-06-25T00:06:19","date_gmt":"2009-06-24T21:06:19","guid":{"rendered":"http:\/\/www.binaryvision.org.il\/?p=376"},"modified":"2009-06-25T21:25:24","modified_gmt":"2009-06-25T18:25:24","slug":"linux-kernel-module-%d7%91%d7%90%d7%92%d7%99%d7%9d-%d7%95%d7%aa%d7%99%d7%a7%d7%95%d7%a0%d7%9d","status":"publish","type":"post","link":"https:\/\/www.binaryvision.co.il\/2009\/06\/linux-kernel-module-%d7%91%d7%90%d7%92%d7%99%d7%9d-%d7%95%d7%aa%d7%99%d7%a7%d7%95%d7%a0%d7%9d\/","title":{"rendered":"Linux Kernel Module, \u05d1\u05d0\u05d2\u05d9\u05dd \u05d5\u05ea\u05d9\u05e7\u05d5\u05e0\u05dd"},"content":{"rendered":"

\u05d1\u05d4\u05ea\u05e2\u05e1\u05e7\u05d5\u05ea\u05d9 \u05e2\u05dd \u05d4OpenMoko \u05e9\u05dc\u05d9, \u05d2\u05d9\u05dc\u05d9\u05ea\u05d9 \u05d1\u05d0\u05d2 \u05de\u05de\u05e9 \u05de\u05e2\u05e6\u05d1\u05df \u05d1Kernel \u05e9\u05dc \u05dc\u05d9\u05e0\u05d5\u05e7\u05e1.
\n\u05d0\u05d5 \u05d9\u05d5\u05ea\u05e8 \u05e0\u05db\u05d5\u05df \u05d1\u05d0\u05d7\u05d3 \u05de\u05d4\u05de\u05d5\u05d3\u05d5\u05dc\u05d9\u05dd \u05e9\u05d1\u05d0\u05d9\u05dd \u05d0\u05d9\u05ea\u05d5.
\n\u05d4\u05d1\u05d0\u05d2 \u05d4\u05d5\u05d0 Null Dereference \u05d5\u05d4\u05e0\u05d4 \u05d4\u05e1\u05d9\u05e4\u05d5\u05e8 \u05e9\u05dc\u05d5.<\/p>\n

\u05de\u05ea\u05d9 \u05d6\u05d4 \u05e7\u05d5\u05e8\u05d4?<\/h2>\n

\u05d9\u05e9 \u05dc\u05d9 \u05de\u05d7\u05e9\u05d1 Windows XP SP3 \u05d1\u05d1\u05d9\u05ea, \u05d5\u05d4\u05d5\u05d0 \u05de\u05e2\u05d5\u05d3\u05db\u05df \u05e2\u05dd \u05db\u05dc \u05d4\u05e4\u05d0\u05d8\u05e6'\u05d9\u05dd \u05e9\u05dc \u05de\u05d9\u05e7\u05e8\u05d5\u05e1\u05d5\u05e4\u05d8.
\n\u05d1\u05d0\u05d7\u05d3 \u05de\u05df \u05d4\u05d9\u05de\u05d9\u05dd \u05d0\u05e0\u05d9 \u05de\u05d7\u05d1\u05e8 \u05d0\u05ea \u05d4\u05de\u05db\u05e9\u05d9\u05e8 (OpenMoko) \u05e2\u05dd \u05db\u05d1\u05dc USB \u05dc\u05de\u05d7\u05e9\u05d1, \u05d5\u05d0\u05e0\u05d9 \u05e8\u05d5\u05d0\u05d4 \u05e9\u05d1Windows \u05dc\u05d0 \u05e7\u05d5\u05e8\u05d4 \u05db\u05dc\u05d5\u05dd.
\n\u05d0\u05d1\u05dc \u05d4\u05de\u05e2\u05e8\u05db\u05ea \u05d4\u05e4\u05e2\u05dc\u05d4 \u05d1\u05e4\u05dc\u05d0\u05e4\u05d5\u05df \u05e0\u05ea\u05e7\u05e2\u05d4, \u05d5\u05d4\u05d5\u05d0 \u05de\u05d4\u05d1\u05d4\u05d1 \u05d0\u05ea \u05d4\u05de\u05e0\u05d5\u05e8\u05d4 \u05e9\u05de\u05e1\u05de\u05e0\u05ea Kernel Panic.<\/p>\n

\u05de\u05d4 \u05dc\u05d0 \u05e0\u05d9\u05e1\u05d9\u05ea\u05d9?<\/h2>\n

\u05de\u05d9\u05d5\u05ea\u05e8 \u05dc\u05e6\u05d9\u05d9\u05df \u05e9\u05e0\u05d9\u05e1\u05d9\u05ea\u05d9 \u05dc\u05d7\u05e4\u05e9 \u05e2\u05dc \u05d6\u05d4 \u05de\u05d9\u05d3\u05e2 \u05d1\u05d0\u05d9\u05e0\u05d8\u05e8\u05e0\u05d8, \u05d0\u05d1\u05dc \u05db\u05d9\u05d5\u05d5\u05df \u05e9\u05d6\u05d4 \u05d1\u05e2\u05d9\u05d4 \u05d7\u05d3\u05e9\u05d4, \u05e9\u05d1\u05d0\u05d4 \u05d1\u05e2\u05e7\u05d1\u05d5\u05ea \u05d1\u05e2\u05d9\u05d4 \u05e9\u05d4Windows \u05d7\u05d5\u05d8\u05e3 Blue Screen \u05d1\u05de\u05e7\u05e8\u05d4 \u05d3\u05d5\u05de\u05d4, \u05d0\u05d6 \u05db\u05dc \u05d4\u05ea\u05d5\u05e6\u05d0\u05d5\u05ea \u05d7\u05d9\u05e4\u05d5\u05e9 \u05d6\u05d4 \u05d4\u05de\u05e7\u05e8\u05d4 \u05d4\u05d4\u05d5\u05d0, \u05d5\u05d0\u05e3 \u05de\u05d9\u05dc\u05d4 \u05e2\u05dc Kernel Panic.
\n\u05d0\u05d7\u05e8\u05d9 \u05d3\u05d9\u05d5\u05e0\u05d9\u05dd \u05de\u05de\u05d5\u05e9\u05db\u05d9\u05dd \u05e2\u05dd \u05d0\u05e0\u05e9\u05d9\u05dd \u05d1Freenode \u05e9\u05e2\u05d5\u05e0\u05d9\u05dd \u05e4\u05e2\u05dd \u05d1\u05e9\u05e2\u05d4 \u05d1\u05e2\u05e8\u05da, \u05d5\u05d2\u05dd \u05d0\u05d6 \u05e7\u05e9\u05d4 \u05dc\u05d4\u05d1\u05d9\u05d0 \u05d0\u05d5\u05ea\u05dd \u05dc\u05de\u05e6\u05d1 \u05e9\u05d4\u05dd \u05e2\u05d5\u05d6\u05e8\u05d9\u05dd \u05d0\u05d9\u05db\u05e9\u05d4\u05d5,
\n\u05d4\u05d2\u05e2\u05ea\u05d9 \u05dc\u05de\u05e1\u05e7\u05e0\u05d4 \u05e9\u05e6\u05e8\u05d9\u05da \u05d0\u05ea \u05d4\u05d4\u05d5\u05d3\u05e2\u05d4 \u05e9\u05dc \u05d4Kernel Panic \u05db\u05d3\u05d9 \u05dc\u05d4\u05d1\u05d9\u05df \u05de\u05d4 \u05d4\u05d5\u05dc\u05da \u05e9\u05dd, \u05d5\u05db\u05d3\u05d9 \u05e9\u05d0\u05e0\u05e9\u05d9\u05dd \u05d9\u05d5\u05db\u05dc\u05d5 \u05dc\u05e2\u05d6\u05d5\u05e8 \u05dc\u05d9 \u05d9\u05d5\u05ea\u05e8 \u05d8\u05d5\u05d1.
\n\u05e8\u05e7 \u05de\u05d4, \u05d4\u05de\u05db\u05e9\u05d9\u05e8 \u05dc\u05d0 \u05d1\u05d3\u05d9\u05d5\u05e7 \u05de\u05d0\u05e4\u05e9\u05e8 \u05dc\u05da \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8 \u05d0\u05dc\u05d9\u05d5 \u05d0\u05d7\u05e8\u05d9 \u05d4Panic \u05d5\u05dc\u05e9\u05d0\u05d5\u05dc \u05d0\u05d5\u05ea\u05d5 \u05de\u05d4 \u05e7\u05e8\u05d4, \u05d4\u05d3\u05d1\u05e8 \u05d4\u05d9\u05d7\u05d9\u05d3 \u05e9\u05d0\u05e4\u05e9\u05e8 \u05dc\u05e2\u05e9\u05d5\u05ea \u05d6\u05d4 \u05dc\u05e2\u05e9\u05d5\u05ea Restart \u05dc\u05de\u05db\u05e9\u05d9\u05e8 \u05d5\u05dc\u05d0\u05d1\u05d3 \u05d0\u05ea \u05d4\u05d4\u05d5\u05d3\u05e2\u05d4.
\n\u05de\u05e1\u05ea\u05d1\u05e8 \u05e9\u05de\u05d9\u05e9\u05d4\u05d5 \u05db\u05ea\u05d1 Patch \u05dc\u05e7\u05e8\u05e0\u05dc \u05e9\u05dc \u05dc\u05d9\u05e0\u05d5\u05e7\u05e1 \u05e9\u05de\u05d0\u05e4\u05e9\u05e8 \u05dc\u05e9\u05de\u05d5\u05e8 \u05d0\u05ea \u05d4\u05d4\u05d5\u05d3\u05e2\u05d5\u05ea \u05de\u05e2\u05e8\u05db\u05ea \u05d1RAM \u05d5\u05d0\u05d6 \u05d1\u05e2\u05dc\u05d9\u05d9\u05ea \u05d4\u05de\u05e2\u05e8\u05db\u05ea \u05e4\u05e2\u05dd \u05d4\u05d1\u05d0\u05d4 \u05d0\u05e4\u05e9\u05e8 \u05dc\u05d1\u05d3\u05d5\u05e7 \u05d0\u05ea \u05d4\u05d4\u05d5\u05d3\u05e2\u05d5\u05ea \u05e9\u05d4\u05d9\u05d5.<\/p>\n

\u05e7\u05d9\u05de\u05e4\u05d5\u05dc \u05de\u05d7\u05d3\u05e9 \u05e9\u05dc \u05d4\u05e7\u05e8\u05e0\u05dc \u05e2\u05dd \u05d4Patch<\/h2>\n

\u05d4Patch \u05d4\u05d5\u05d0 \u05e9\u05dc Lindi, \u05d5\u05e7\u05d5\u05e8\u05d0\u05d9\u05dd \u05dc\u05d5 ramconsole.
\n\u05d0\u05d6 \u05d3\u05d1\u05e8 \u05e8\u05d0\u05e9\u05d5\u05df \u05e9\u05d4\u05d9\u05d9\u05ea\u05d9 \u05e6\u05e8\u05d9\u05da \u05d6\u05d4 \u05dc\u05d4\u05e9\u05d9\u05d2 \u05d0\u05ea \u05d4\u05de\u05e7\u05d5\u05e8 \u05e9\u05dc \u05d4Kernel \u05d1\u05d2\u05e8\u05e1\u05d4 \u05d4\u05de\u05ea\u05d0\u05d9\u05de\u05d4, \u05d5\u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05e9\u05d9\u05ea\u05d0\u05d9\u05dd \u05dc\u05de\u05db\u05e9\u05d9\u05e8.
\n\u05d0\u05ea \u05d4\u05de\u05e7\u05d5\u05e8 \u05de\u05de\u05e9 \u05e7\u05dc \u05dc\u05d4\u05e9\u05d9\u05d2, \u05d0\u05ea \u05d4\u05e7\u05d5\u05d1\u05e5 \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d4\u05e9\u05d2\u05ea\u05d9 \u05de\u05d4Repository \u05e9\u05dc SHR (\u05d4\u05e4\u05e6\u05d4 \u05e9\u05de\u05d5\u05ea\u05e7\u05e0\u05ea \u05d0\u05e6\u05dc\u05d9 \u05e2\u05dc \u05d4Moko)
\n\u05d3\u05d1\u05e8 \u05e9\u05e0\u05d9 \u05e6\u05e8\u05d9\u05da \u05dc\u05e9\u05d9\u05dd \u05d0\u05ea \u05d4Patch \u05e2\u05dc \u05d4\u05e7\u05d5\u05d3 \u05de\u05e7\u05d5\u05e8, \u05d5\u05dc\u05d5\u05d5\u05d3\u05d0 \u05e9\u05db\u05dc \u05d4\u05d7\u05dc\u05e7\u05d9\u05dd \u05e9\u05dc\u05d5 \u05e0\u05e8\u05e9\u05de\u05d5 \u05d1\u05e6\u05d5\u05e8\u05d4 \u05ea\u05e7\u05d9\u05e0\u05d4.
\n\u05d5\u05d3\u05d1\u05e8 \u05e9\u05dc\u05d9\u05e9\u05d9, \u05e6\u05e8\u05d9\u05da \u05dc\u05d4\u05e9\u05d9\u05d2 \u05e7\u05d5\u05de\u05e4\u05d9\u05dc\u05e8 \u05e9\u05d9\u05e7\u05de\u05e4\u05dc \u05dc\u05d9 \u05dc\u05de\u05e2\u05d1\u05d3 ARM \u05d5\u05dc\u05d0 X86, \u05d6\u05d4 \u05d4\u05d1\u05d0\u05ea\u05d9 \u05de\u05d4OpenMoko \u05d5\u05d9\u05e7\u05d9\u05e4\u05d3\u05d9\u05d4 \u05e9\u05de\u05db\u05d9\u05dc \u05d3\u05e3 \u05d5\u05d4\u05d5\u05e8\u05d3\u05d4 \u05e9\u05dc \u05d4Crosstools \u05e9\u05e6\u05e8\u05d9\u05da \u05db\u05d3\u05d9 \u05dc\u05e7\u05de\u05e4\u05dc \u05d3\u05d1\u05e8\u05d9\u05dd \u05dc\u05de\u05db\u05e9\u05d9\u05e8.
\n\u05d0\u05d7\u05e8\u05d9 \u05db\u05dc \u05d6\u05d4, \u05d9\u05e9 \u05dc\u05d9 \u05e7\u05e8\u05e0\u05dc, \u05d5\u05d9\u05e9 \u05dc\u05d9 \u05de\u05d5\u05d3\u05d5\u05dc\u05d9\u05dd \u05e9\u05d1\u05d0\u05d9\u05dd \u05d0\u05d9\u05ea\u05d5, \u05d5\u05d0\u05e0\u05d9 \u05de\u05e2\u05d1\u05d9\u05e8 \u05d0\u05d5\u05ea\u05dd \u05dc\u05de\u05db\u05e9\u05d9\u05e8, \u05d5\u05de\u05ea\u05e4\u05dc\u05dc…
\n\u05d4\u05de\u05db\u05e9\u05d9\u05e8 \u05e2\u05d5\u05dc\u05d4, \u05d4\u05e7\u05e8\u05e0\u05dc \u05d4\u05d7\u05d3\u05e9 \u05e2\u05d5\u05d1\u05d3, \u05e0\u05e9\u05e8\u05d0 \u05dc\u05e7\u05de\u05e4\u05dc \u05d0\u05ea \u05d4\u05db\u05dc\u05d9 ramconsole-dump(\u05e9\u05d2\u05dd \u05d4\u05d5\u05d0 \u05e0\u05db\u05ea\u05d1 \u05e2"\u05d9 lindi) \u05db\u05d3\u05d9 \u05dc\u05e8\u05d0\u05d5\u05ea \u05d0\u05ea \u05d4\u05d4\u05d5\u05d3\u05e2\u05d5\u05ea,
\n\u05dc\u05d4\u05e2\u05d1\u05d9\u05e8 \u05d0\u05d5\u05ea\u05d5 \u05dc\u05de\u05db\u05e9\u05d9\u05e8, \u05dc\u05d2\u05e8\u05d5\u05dd \u05dcKernel Panic, \u05d5\u05dc\u05e8\u05d0\u05d5\u05ea \u05d0\u05ea \u05d4\u05e4\u05dc\u05d8.<\/p>\n

\u05de\u05e1\u05ea\u05d1\u05e8 \u05e9\u05d6\u05d4 \u05dc\u05d0 \u05d4\u05db\u05dc<\/h2>\n

\u05db\u05d3\u05d9 \u05dc\u05d0\u05ea\u05d7\u05dc \u05de\u05d7\u05d3\u05e9 \u05d0\u05ea \u05d4\u05de\u05db\u05e9\u05d9\u05e8 \u05d0\u05d7\u05e8\u05d9 \u05d4Kernel Panic, \u05d0\u05e0\u05d9 \u05e6\u05e8\u05d9\u05da \u05dc\u05d4\u05d5\u05e6\u05d9\u05d0 \u05e1\u05d5\u05dc\u05dc\u05d4 \u05d5\u05dc\u05d4\u05db\u05e0\u05d9\u05e1 \u05d7\u05d6\u05e8\u05d4.
\n\u05d7\u05d1\u05dc \u05de\u05d0\u05d3 \u05e9\u05d4\u05e4\u05e2\u05d5\u05dc\u05d4 \u05d4\u05d6\u05d0\u05ea \u05de\u05d5\u05d7\u05e7\u05ea \u05d0\u05ea \u05d4RAM \u05e9\u05e6\u05e8\u05d9\u05da \u05d6\u05e8\u05dd \u05db\u05d3\u05d9 \u05dc\u05e9\u05de\u05d5\u05e8 \u05e2\u05dc \u05d4\u05de\u05d9\u05d3\u05e2 \u05e9\u05dc\u05d5.
\n\u05d0\u05d7\u05e8\u05d9 \u05e9\u05d9\u05d7\u05d4 \u05e7\u05e6\u05e8\u05d4 \u05e2\u05dd lindi \u05de\u05e1\u05ea\u05d1\u05e8 \u05e9\u05d0\u05e0\u05d9 \u05e6\u05e8\u05d9\u05da \u05dc\u05d0\u05ea\u05d7\u05dc \u05d0\u05ea \u05d4\u05e7\u05e8\u05e0\u05dc \u05e2\u05dd \u05e4\u05e8\u05de\u05d8\u05e8\u05d9\u05dd \u05e0\u05d5\u05e1\u05e4\u05d9\u05dd:<\/p>\n

panic=10 mem=127M<\/pre>\n

\u05d4\u05e8\u05d0\u05e9\u05d5\u05df \u05db\u05d3\u05d9 \u05e9\u05d0\u05d7\u05e8\u05d9 10 \u05e9\u05e0\u05d9\u05d5\u05ea \u05de\u05d4Panic \u05d4\u05d5\u05d0 \u05d9\u05e2\u05e9\u05d4 \u05d0\u05ea\u05d7\u05d5\u05dc \u05d1\u05e2\u05e6\u05de\u05d5, \u05d5\u05d4\u05e9\u05e0\u05d9 \u05db\u05d3\u05d9 \u05e9\u05d4\u05d5\u05d0 \u05dc\u05d0 \u05d9\u05e9\u05ea\u05de\u05e9 \u05d1\u05db\u05dc \u05d4\u05d6\u05d9\u05db\u05e8\u05d5\u05df \u05d5\u05d9\u05d3\u05e8\u05d5\u05e1 \u05d0\u05ea \u05d4Ramconsole \u05db\u05e9\u05d9\u05e2\u05dc\u05d4 \u05e9\u05d5\u05d1.
\n\u05d0\u05d6 \u05db\u05d3\u05d9 \u05dc\u05d4\u05e4\u05e2\u05d9\u05dc \u05d0\u05ea \u05d4Kernel \u05e2\u05dd \u05e4\u05e8\u05de\u05d8\u05e8\u05d9\u05dd \u05d0\u05e0\u05d9 \u05e6\u05e8\u05d9\u05da \u05dc\u05d4\u05d7\u05dc\u05d9\u05e3 \u05d0\u05ea \u05d4Bootloader \u05e9\u05e2\u05dc \u05d4\u05de\u05db\u05e9\u05d9\u05e8, \u05db\u05d9 \u05db\u05e8\u05d2\u05e2 \u05d4\u05d5\u05d0 Qi, \u05d5\u05d4\u05d5\u05d0 \u05dc\u05d0 \u05de\u05d0\u05e4\u05e9\u05e8 \u05e2\u05e8\u05d9\u05db\u05ea \u05e4\u05e8\u05de\u05d8\u05e8\u05d9\u05dd.
\n\u05d0\u05d6 \u05d0\u05e0\u05d9 \u05de\u05d7\u05dc\u05d9\u05e3 \u05d0\u05ea \u05d4Bootloader \u05d1u-boot, \u05d5\u05e0\u05db\u05e0\u05e1 \u05dc\u05e7\u05d5\u05e0\u05e1\u05d5\u05dc \u05e9\u05dc\u05d5 (\u05dc\u05d0 \u05e4\u05e9\u05d5\u05d8, \u05d0\u05d1\u05dc \u05d0\u05e0\u05d9 \u05dc\u05d0 \u05d0\u05e4\u05e8\u05d8) \u05db\u05d3\u05d9 \u05dc\u05e2\u05e8\u05d5\u05da \u05d0\u05ea \u05d4\u05e4\u05e8\u05de\u05d8\u05e8\u05d9\u05dd.
\n\u05d0\u05d7\u05e8\u05d9 \u05db\u05dc \u05d4\u05e1\u05d9\u05e4\u05d5\u05e8, \u05e2\u05d5\u05dc\u05d4 \u05d4\u05e7\u05e8\u05e0\u05dc, \u05d0\u05e0\u05d9 \u05de\u05e7\u05e4\u05d9\u05d0 \u05d0\u05d5\u05ea\u05d5, \u05d0\u05d7\u05e8\u05d9 10 \u05e9\u05e0\u05d9\u05d5\u05ea \u05d4\u05d5\u05d0 \u05e2\u05d5\u05e9\u05d4 \u05dc\u05e2\u05e6\u05de\u05d5 Reboot, \u05d5\u05d0\u05d6 \u05d0\u05e0\u05d9 \u05de\u05e4\u05e2\u05d9\u05dc \u05d0\u05ea ramconsole-dump \u05dc\u05ea\u05d5\u05da \u05e7\u05d5\u05d1\u05e5.
\n\u05d5\u05d6\u05d4\u05d5! \u05d9\u05e9 \u05dc\u05d9 \u05d0\u05ea \u05d4dump, \u05e0\u05e9\u05d0\u05e8 \u05e8\u05e7 \u05dc\u05de\u05e6\u05d5\u05d0 \u05d5\u05dc\u05ea\u05e7\u05df \u05d0\u05ea \u05d4\u05d1\u05e2\u05d9\u05d4. \u05d4\u05e0\u05d4 \u05d4\u05e9\u05d2\u05d9\u05d0\u05d4 \u05de\u05d9 \u05e9\u05e8\u05d5\u05e6\u05d4 \u05dc\u05e8\u05d0\u05d5\u05ea:<\/p>\n

\n<6>[   44.390000] g_ether gadget: full speed config #2: RNDIS\n<1>[   44.755000] Unable to handle kernel NULL pointer dereference at virtual address 00000000\n<1>[   44.755000] pgd = c0004000\n<1>[   44.755000] [00000000] *pgd=00000000\n<4>[   44.755000] Internal error: Oops: 17 [#1] PREEMPT\n<4>[   44.755000] Modules linked in: sco bnep snd_pcm_oss snd_mixer_oss ar6000 snd_soc_neo1973_gta02_wm8753 snd_soc_s3c24xx_i2s\n   snd_soc_s3c24xx s3cmci btusb rfcomm ppp_generic slhc ohci_hcd ipv6 hidp l2cap bluetooth g_ether snd_soc_wm8753 snd_soc_core\n   snd_pcm snd_timer snd_page_alloc snd\n<4>[   44.755000] CPU: 0    Not tainted  (2.6.29-GTA02_fate-mokodev #2)\n<4>[   44.755000] PC is at strlen+0x18\/0x2c\n<4>[   44.755000] LR is at gen_ndis_query_resp+0x574\/0xc38 [g_ether]\n<4>[   44.755000] pc : []    lr : []    psr: 60000093\n<4>[   44.755000] sp : c0391cf8  ip : c0391d08  fp : c0391d04\n<4>[   44.755000] r10: c655b3e0  r9 : 000001c0  r8 : c655b3f4\n<4>[   44.755000] r7 : 00000000  r6 : c655b40c  r5 : 00000000  r4 : 00000000\n<4>[   44.755000] r3 : bf0672b8  r2 : 00000000  r1 : 00000000  r0 : 00000000\n<4>[   44.755000] Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel\n<4>[   44.755000] Control: c000717f  Table: 371ac000  DAC: 00000017\n<4>[   44.755000] Process swapper (pid: 0, stack limit = 0xc0390268)\n<4>[   44.755000] Stack: (0xc0391cf8 to 0xc0392000)\n<4>[   44.755000] 1ce0:                                                       c0391d2c c0391d08 \n<4>[   44.755000] 1d00: bf05f708 c01623e8 c655b3f4 c7b77000 bf0672b8 c64e3aa0 00000000 00000004 \n<4>[   44.755000] 1d20: c0391d54 c0391d30 bf05fe48 bf05f1a4 c655b3e0 c09203e4 c0391d64 00000000 \n<4>[   44.755000] 1d40: c7b77000 0000004c c0391dec c0391d58 bf06002c bf05fddc c0391d84 c0391d68 \n<4>[   44.755000] 1d60: c0070cbc c0070200 c784d000 00000006 c674ca40 c03b5b14 c64e3aa8 c0391dc4 \n<4>[   44.755000] 1d80: c0391d98 c01e9d68 c01e808c c0367c68 c02d37b8 c03b5b14 00000000 c03934c8 \n<4>[   44.755000] 1da0: 00000000 00000000 00000000 0000000a c0391e04 c0391dc0 c006ed3c c006d3cc \n<4>[   44.755000] 1dc0: c0391de4 c64e3aa8 c7b0be00 00000000 c64e3aa0 00000000 000001c0 00000004 \n<4>[   44.755000] 1de0: c0391e14 c0391df0 bf06075c bf05fea4 00000000 30025864 c0391e4c c64e3aa0 \n<4>[   44.755000] 1e00: c03b5b14 00000000 c0391e34 c0391e18 c01e7f2c bf060740 c08be5d4 00000001 \n<4>[   44.755000] 1e20: c08be5d4 00000000 c0391e74 c0391e38 c01e8dc0 c01e7ee0 00000001 00000000 \n<4>[   44.755000] 1e40: c03b5b14 c7b77000 c0390000 00000001 c03b5af0 00000000 c03b5b14 00000001 \n<4>[   44.755000] 1e60: 00000000 c64e3aa0 c0391eac c0391e78 c01e92f8 c01e8bd0 c02b3b14 c0070bb8 \n<4>[   44.755000] 1e80: 00000001 c03b5af0 00000000 00000001 00000000 00000000 00000000 c08be5d4 \n<4>[   44.755000] 1ea0: c0391ef4 c0391eb0 c01e977c c01e9194 00000000 00000001 c007026c 00000001 \n<4>[   44.755000] 1ec0: 00000000 40000093 00000000 c79bfa40 00000000 00000000 00000029 00000001 \n<4>[   44.755000] 1ee0: c0390000 30025864 c0391f14 c0391ef8 c007c3e4 c01e95ac c03a0360 00000029 \n<4>[   44.755000] 1f00: c79bfa40 c03a0394 c0391f34 c0391f18 c007df34 c007c3c8 00000029 00000000 \n<4>[   44.755000] 1f20: 02000000 00000002 c0391f4c c0391f38 c002a054 c007de20 ffffffff f4000000 \n<4>[   44.755000] 1f40: c0391fa4 c0391f50 c002a958 c002a010 00000001 00000032 f4100000 60000013 \n<4>[   44.755000] 1f60: c002c554 c0390000 c00282a8 c0395008 30025900 41129200 30025864 c0391fa4 \n<4>[   44.755000] 1f80: c0391f88 c0391f98 c002be20 c002c5a0 60000013 ffffffff c0391fbc c0391fa8 \n<4>[   44.755000] 1fa0: c002c344 c002c564 c08af150 c03bf744 c0391fcc c0391fc0 c02aeff0 c002c318 \n<4>[   44.755000] 1fc0: c0391ff4 c0391fd0 c0008ae0 c02aef98 c000858c 00000000 00000000 c0027ea4 \n<4>[   44.755000] 1fe0: c0007175 c03bfbec 00000000 c0391ff8 30008034 c00088e8 00000000 00000000 \n<4>[   44.755000] Backtrace: \n<4>[   44.755000] [] (strlen+0x0\/0x2c) from [] (gen_ndis_query_resp+0x574\/0xc38 [g_ether])\n<4>[   44.755000] [] (gen_ndis_query_resp+0x0\/0xc38 [g_ether]) from [] (rndis_query_response+0x7c\/0xc8 [g_ether])\n<4>[   44.755000] [] (rndis_query_response+0x0\/0xc8 [g_ether]) from [] (rndis_msg_parser+0x198\/0x3c8 [g_ether])\n<4>[   44.755000]  r6:0000004c r5:c7b77000 r4:00000000\n<4>[   44.755000] [] (rndis_msg_parser+0x0\/0x3c8 [g_ether]) from [] (rndis_command_complete+0x2c\/0x70 [g_ether])\n<4>[   44.755000] [] (rndis_command_complete+0x0\/0x70 [g_ether]) from [] (s3c2410_udc_done+0x5c\/0x70)\n<4>[   44.755000]  r6:00000000 r5:c03b5b14 r4:c64e3aa0\n<4>[   44.755000] [] (s3c2410_udc_done+0x0\/0x70) from [] (s3c2410_udc_read_fifo+0x200\/0x274)\n<4>[   44.755000]  r6:00000000 r5:c08be5d4 r4:00000001\n<4>[   44.755000] [] (s3c2410_udc_read_fifo+0x0\/0x274) from [] (s3c2410_udc_handle_ep0+0x174\/0x1c4)\n<4>[   44.755000] [] (s3c2410_udc_handle_ep0+0x0\/0x1c4) from [] (s3c2410_udc_irq+0x1e0\/0x298)\n<4>[   44.755000] [] (s3c2410_udc_irq+0x0\/0x298) from [] (handle_IRQ_event+0x2c\/0x68)\n<4>[   44.755000] [] (handle_IRQ_event+0x0\/0x68) from [] (handle_edge_irq+0x124\/0x174)\n<4>[   44.755000]  r7:c03a0394 r6:c79bfa40 r5:00000029 r4:c03a0360\n<4>[   44.755000] [] (handle_edge_irq+0x0\/0x174) from [] (__exception_text_start+0x54\/0x6c)\n<4>[   44.755000]  r7:00000002 r6:02000000 r5:00000000 r4:00000029\n<4>[   44.755000] [] (__exception_text_start+0x0\/0x6c) from [] (__irq_svc+0x38\/0xc8)\n<4>[   44.755000] Exception stack(0xc0391f50 to 0xc0391f98)\n<4>[   44.755000] 1f40:                                     00000001 00000032 f4100000 60000013 \n<4>[   44.755000] 1f60: c002c554 c0390000 c00282a8 c0395008 30025900 41129200 30025864 c0391fa4 \n<4>[   44.755000] 1f80: c0391f88 c0391f98 c002be20 c002c5a0 60000013 ffffffff                   \n<4>[   44.755000]  r5:f4000000 r4:ffffffff\n<4>[   44.755000] [] (default_idle+0x0\/0x54) from [] (cpu_idle+0x3c\/0x68)\n<4>[   44.755000] [] (cpu_idle+0x0\/0x68) from [] (rest_init+0x68\/0x7c)\n<4>[   44.755000]  r5:c03bf744 r4:c08af150\n<4>[   44.755000] [] (rest_init+0x0\/0x7c) from [] (start_kernel+0x208\/0x268)\n<4>[   44.755000] [] (start_kernel+0x0\/0x268) from [<30008034>] (0x30008034)\n<4>[   44.755000]  r5:c03bfbec r4:c0007175\n<4>[   44.755000] Code: e24cb004 e1a02000 ea000000 e2800001 (e5d03000) \n<0>[   44.760000] Kernel panic - not syncing: Fatal exception in interrupt\n<0>[   44.765000] Rebooting in 10 seconds..arch_reset: attempting watchdog reset\n<\/pre>\n

\u05ea\u05d9\u05e7\u05d5\u05df \u05d4\u05de\u05d5\u05d3\u05d5\u05dc \u05d1\u05e7\u05e8\u05e0\u05dc<\/h2>\n

\u05d4Crash Dump \u05de\u05de\u05e9 \u05de\u05d3\u05d5\u05d9\u05d9\u05e7, \u05e2\u05d3 \u05db\u05d3\u05d9 \u05d4\u05e4\u05d5\u05e0\u05e7\u05e6\u05d9\u05d9\u05d4 \u05d4\u05d0\u05d7\u05e8\u05d5\u05e0\u05d4 \u05e9\u05d4\u05d5\u05e8\u05e6\u05d4, \u05d5\u05de\u05d0\u05d9\u05d6\u05d4 \u05e7\u05d5\u05d1\u05e5.
\n\u05ea\u05d5\u05d3\u05d5\u05ea \u05dc\u05e2\u05d6\u05e8\u05d4 \u05e9\u05dc TAsn \u05d5\u05e9\u05dc \u05e2\u05d5\u05d3 \u05d1\u05d7\u05d5\u05e8 \u05deFreenode, \u05d4\u05dd \u05d4\u05e6\u05dc\u05d9\u05d7\u05d5 \u05dc\u05de\u05e6\u05d5\u05d0 \u05d0\u05ea \u05d4\u05d1\u05e2\u05d9\u05d4 \u05d1\u05e7\u05d5\u05d3 \u05e9\u05dc rndis.c.
\n\u05d5\u05de\u05d4 \u05e9\u05de\u05e1\u05ea\u05d1\u05e8 \u05e9\u05de\u05d9 \u05e9\u05db\u05ea\u05d1 \u05d0\u05ea \u05d6\u05d4 \u05d4\u05e0\u05d9\u05d7 \u05e9\u05d0\u05d7\u05d3 \u05d4\u05e4\u05e8\u05de\u05d8\u05e8\u05d9\u05dd \u05dc\u05d0 \u05d9\u05db\u05d5\u05dc \u05dc\u05d4\u05d9\u05d5\u05ea Null, \u05d5\u05e2\u05e9\u05d4 \u05e2\u05dc\u05d9\u05d5 strlen().
\n\u05de\u05d4 \u05e9\u05d2\u05e8\u05dd \u05dcstrlen \u05dc\u05e2\u05e9\u05d5\u05ea Null Dereference \u05d5\u05dc\u05de\u05d5\u05ea.
\n\u05d4\u05ea\u05d9\u05e7\u05d5\u05df \u05d4\u05d9\u05d4 \u05dc\u05d4\u05d5\u05e1\u05d9\u05e3 \u05db\u05de\u05d4 \u05e9\u05d5\u05e8\u05d5\u05ea \u05e9\u05de\u05de\u05e6\u05d9\u05d0\u05d5\u05ea \u05e9\u05dd \u05dcDevice, \u05d5\u05de\u05d7\u05d9\u05d6\u05e8\u05d5\u05ea \u05d0\u05ea \u05d4\u05e9\u05dd \u05d4\u05de\u05d5\u05de\u05e6\u05d0.<\/p>\n

\u05d4\u05ea\u05d9\u05e7\u05d5\u05df<\/h2>\n
\n--- a\/drivers\/usb\/gadget\/rndis.c\n+++ b\/drivers\/usb\/gadget\/rndis.c\n@@ -294,9 +294,14 @@ gen_ndis_query_resp (int configNr, u32 OID, u8 *buf, unsigned buf_len,\n \t\/* mandatory *\/\n \tcase OID_GEN_VENDOR_DESCRIPTION:\n \t\tpr_debug(\"%s: OID_GEN_VENDOR_DESCRIPTION\\n\", __func__);\n+#if 0\n \t\tlength = strlen (rndis_per_dev_params [configNr].vendorDescr);\n \t\tmemcpy (outbuf,\n \t\t\trndis_per_dev_params [configNr].vendorDescr, length);\n+#endif\n+\t\tconst char vendorDescr[]=\"dummy\";\n+\t\tlength = strlen (vendorDescr);\n+\t\tmemcpy (outbuf,\tvendorDescr, length);\n \t\tretval = 0;\n \t\tbreak;\n<\/pre>\n

\u05dc\u05e1\u05d9\u05db\u05d5\u05dd<\/h2>\n

\u05dc\u05d0\u05d7\u05e8 \u05ea\u05d9\u05e7\u05d5\u05df \u05d4\u05d1\u05d0\u05d2, \u05d4\u05e7\u05e8\u05e0\u05dc \u05e2\u05d5\u05d1\u05d3, \u05de\u05ea\u05d7\u05d1\u05e8 \u05dc\u05d5\u05d5\u05d9\u05e0\u05d3\u05d5\u05d5\u05e1 \u05de\u05d6\u05d3\u05d4\u05d4 \u05db\u05de\u05d5 \u05e9\u05e6\u05e8\u05d9\u05da \u05dbRNDIS Device,
\n\u05d5\u05db\u05d5\u05dc\u05dd \u05e9\u05de\u05d7\u05d9\u05dd \u05d5\u05de\u05d0\u05d5\u05e9\u05e8\u05d9\u05dd, \u05d0\u05d5 \u05d9\u05d5\u05ea\u05e8 \u05e0\u05db\u05d5\u05df \u05d0\u05e0\u05d9 \u05e9\u05de\u05d7 \u05d5\u05de\u05d0\u05d5\u05e9\u05e8 \u05e9\u05d0\u05e0\u05d9 \u05d9\u05db\u05d5\u05dc \u05dc\u05d7\u05d6\u05d5\u05e8 \u05dc\u05e2\u05d1\u05d5\u05d3 \u05e2\u05dc \u05ea\u05d5\u05db\u05e0\u05d5\u05ea \u05d1\u05de\u05db\u05e9\u05d9\u05e8 \ud83d\ude42<\/p>\n

\u05d0\u05ea\u05dd \u05de\u05d5\u05d6\u05de\u05e0\u05d9\u05dd \u05dc\u05d4\u05d2\u05d9\u05d1 \u05d5\u05dc\u05e9\u05d0\u05d5\u05dc \u05d3\u05d1\u05e8\u05d9\u05dd \u05d0\u05dd \u05ea\u05e8\u05e6\u05d5….<\/p>\n","protected":false},"excerpt":{"rendered":"

\u05d1\u05d4\u05ea\u05e2\u05e1\u05e7\u05d5\u05ea\u05d9 \u05e2\u05dd \u05d4OpenMoko \u05e9\u05dc\u05d9, \u05d2\u05d9\u05dc\u05d9\u05ea\u05d9 \u05d1\u05d0\u05d2 \u05de\u05de\u05e9 \u05de\u05e2\u05e6\u05d1\u05df \u05d1Kernel \u05e9\u05dc \u05dc\u05d9\u05e0\u05d5\u05e7\u05e1. \u05d0\u05d5 \u05d9\u05d5\u05ea\u05e8 \u05e0\u05db\u05d5\u05df \u05d1\u05d0\u05d7\u05d3 \u05de\u05d4\u05de\u05d5\u05d3\u05d5\u05dc\u05d9\u05dd \u05e9\u05d1\u05d0\u05d9\u05dd \u05d0\u05d9\u05ea\u05d5. \u05d4\u05d1\u05d0\u05d2 \u05d4\u05d5\u05d0 Null Dereference \u05d5\u05d4\u05e0\u05d4 \u05d4\u05e1\u05d9\u05e4\u05d5\u05e8 \u05e9\u05dc\u05d5. \u05de\u05ea\u05d9 \u05d6\u05d4 \u05e7\u05d5\u05e8\u05d4? \u05d9\u05e9 \u05dc\u05d9 \u05de\u05d7\u05e9\u05d1 Windows XP SP3 \u05d1\u05d1\u05d9\u05ea, \u05d5\u05d4\u05d5\u05d0 \u05de\u05e2\u05d5\u05d3\u05db\u05df \u05e2\u05dd \u05db\u05dc \u05d4\u05e4\u05d0\u05d8\u05e6'\u05d9\u05dd \u05e9\u05dc \u05de\u05d9\u05e7\u05e8\u05d5\u05e1\u05d5\u05e4\u05d8. \u05d1\u05d0\u05d7\u05d3 \u05de\u05df \u05d4\u05d9\u05de\u05d9\u05dd \u05d0\u05e0\u05d9 \u05de\u05d7\u05d1\u05e8 \u05d0\u05ea \u05d4\u05de\u05db\u05e9\u05d9\u05e8 (OpenMoko) \u05e2\u05dd \u05db\u05d1\u05dc USB \u05dc\u05de\u05d7\u05e9\u05d1, \u05d5\u05d0\u05e0\u05d9 […]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[65,64,60,21,66],"_links":{"self":[{"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/posts\/376"}],"collection":[{"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/comments?post=376"}],"version-history":[{"count":5,"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/posts\/376\/revisions"}],"predecessor-version":[{"id":381,"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/posts\/376\/revisions\/381"}],"wp:attachment":[{"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/media?parent=376"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/categories?post=376"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.binaryvision.co.il\/wp-json\/wp\/v2\/tags?post=376"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}