get_user() may fail, if so return -EFAULT.
[Fixed one missing place by tiwai]
Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
        while (count > 0) {
                unsigned short sval;
                CHECK_SCHEDULER();
-               get_user(sval, buf);
+               if (get_user(sval, buf))
+                       return -EFAULT;
                EMU8000_SMLD_WRITE(emu, sval);
                buf++;
                count--;
        while (count-- > 0) {
                unsigned short sval;
                CHECK_SCHEDULER();
-               get_user(sval, buf);
+               if (get_user(sval, buf))
+                       return -EFAULT;
                EMU8000_SMLD_WRITE(emu, sval);
                buf++;
                if (rec->voices > 1) {
                        CHECK_SCHEDULER();
-                       get_user(sval, buf);
+                       if (get_user(sval, buf))
+                               return -EFAULT;
                        EMU8000_SMRD_WRITE(emu, sval);
                        buf++;
                }