[PATCH] m68k: dmasound __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by Al Viro and committed by Linus Torvalds 031eb4cd d998265f

+60 -60
+47 -47
sound/oss/dmasound/dmasound_atari.c
··· 67 * ++geert: split in even more functions (one per format) 68 */ 69 70 - static ssize_t ata_ct_law(const u_char *userPtr, size_t userCount, 71 u_char frame[], ssize_t *frameUsed, 72 ssize_t frameLeft); 73 - static ssize_t ata_ct_s8(const u_char *userPtr, size_t userCount, 74 u_char frame[], ssize_t *frameUsed, 75 ssize_t frameLeft); 76 - static ssize_t ata_ct_u8(const u_char *userPtr, size_t userCount, 77 u_char frame[], ssize_t *frameUsed, 78 ssize_t frameLeft); 79 - static ssize_t ata_ct_s16be(const u_char *userPtr, size_t userCount, 80 u_char frame[], ssize_t *frameUsed, 81 ssize_t frameLeft); 82 - static ssize_t ata_ct_u16be(const u_char *userPtr, size_t userCount, 83 u_char frame[], ssize_t *frameUsed, 84 ssize_t frameLeft); 85 - static ssize_t ata_ct_s16le(const u_char *userPtr, size_t userCount, 86 u_char frame[], ssize_t *frameUsed, 87 ssize_t frameLeft); 88 - static ssize_t ata_ct_u16le(const u_char *userPtr, size_t userCount, 89 u_char frame[], ssize_t *frameUsed, 90 ssize_t frameLeft); 91 - static ssize_t ata_ctx_law(const u_char *userPtr, size_t userCount, 92 u_char frame[], ssize_t *frameUsed, 93 ssize_t frameLeft); 94 - static ssize_t ata_ctx_s8(const u_char *userPtr, size_t userCount, 95 u_char frame[], ssize_t *frameUsed, 96 ssize_t frameLeft); 97 - static ssize_t ata_ctx_u8(const u_char *userPtr, size_t userCount, 98 u_char frame[], ssize_t *frameUsed, 99 ssize_t frameLeft); 100 - static ssize_t ata_ctx_s16be(const u_char *userPtr, size_t userCount, 101 u_char frame[], ssize_t *frameUsed, 102 ssize_t frameLeft); 103 - static ssize_t ata_ctx_u16be(const u_char *userPtr, size_t userCount, 104 u_char frame[], ssize_t *frameUsed, 105 ssize_t frameLeft); 106 - static ssize_t ata_ctx_s16le(const u_char *userPtr, size_t userCount, 107 u_char frame[], ssize_t *frameUsed, 108 ssize_t frameLeft); 109 - static ssize_t ata_ctx_u16le(const u_char *userPtr, size_t userCount, 110 u_char frame[], ssize_t *frameUsed, 111 ssize_t frameLeft); 112 ··· 151 /*** Translations ************************************************************/ 152 153 154 - static ssize_t ata_ct_law(const u_char *userPtr, size_t userCount, 155 u_char frame[], ssize_t *frameUsed, 156 ssize_t frameLeft) 157 { ··· 176 } 177 178 179 - static ssize_t ata_ct_s8(const u_char *userPtr, size_t userCount, 180 u_char frame[], ssize_t *frameUsed, 181 ssize_t frameLeft) 182 { ··· 194 } 195 196 197 - static ssize_t ata_ct_u8(const u_char *userPtr, size_t userCount, 198 u_char frame[], ssize_t *frameUsed, 199 ssize_t frameLeft) 200 { ··· 217 used = count*2; 218 while (count > 0) { 219 u_short data; 220 - if (get_user(data, (u_short *)userPtr)) 221 return -EFAULT; 222 userPtr += 2; 223 *p++ = data ^ 0x8080; ··· 229 } 230 231 232 - static ssize_t ata_ct_s16be(const u_char *userPtr, size_t userCount, 233 u_char frame[], ssize_t *frameUsed, 234 ssize_t frameLeft) 235 { ··· 241 used = count*2; 242 while (count > 0) { 243 u_short data; 244 - if (get_user(data, (u_short *)userPtr)) 245 return -EFAULT; 246 userPtr += 2; 247 *p++ = data; ··· 261 } 262 263 264 - static ssize_t ata_ct_u16be(const u_char *userPtr, size_t userCount, 265 u_char frame[], ssize_t *frameUsed, 266 ssize_t frameLeft) 267 { ··· 273 used = count*2; 274 while (count > 0) { 275 u_short data; 276 - if (get_user(data, (u_short *)userPtr)) 277 return -EFAULT; 278 userPtr += 2; 279 data ^= 0x8000; ··· 287 count = min_t(unsigned long, userCount, frameLeft)>>2; 288 used = count*4; 289 while (count > 0) { 290 - u_long data; 291 - if (get_user(data, (u_int *)userPtr)) 292 return -EFAULT; 293 userPtr += 4; 294 *p++ = data ^ 0x80008000; ··· 300 } 301 302 303 - static ssize_t ata_ct_s16le(const u_char *userPtr, size_t userCount, 304 u_char frame[], ssize_t *frameUsed, 305 ssize_t frameLeft) 306 { ··· 313 used = count*2; 314 while (count > 0) { 315 u_short data; 316 - if (get_user(data, (u_short *)userPtr)) 317 return -EFAULT; 318 userPtr += 2; 319 data = le2be16(data); ··· 328 used = count*4; 329 while (count > 0) { 330 u_long data; 331 - if (get_user(data, (u_int *)userPtr)) 332 return -EFAULT; 333 userPtr += 4; 334 data = le2be16dbl(data); ··· 341 } 342 343 344 - static ssize_t ata_ct_u16le(const u_char *userPtr, size_t userCount, 345 u_char frame[], ssize_t *frameUsed, 346 ssize_t frameLeft) 347 { ··· 354 used = count*2; 355 while (count > 0) { 356 u_short data; 357 - if (get_user(data, (u_short *)userPtr)) 358 return -EFAULT; 359 userPtr += 2; 360 data = le2be16(data) ^ 0x8000; ··· 368 used = count; 369 while (count > 0) { 370 u_long data; 371 - if (get_user(data, (u_int *)userPtr)) 372 return -EFAULT; 373 userPtr += 4; 374 data = le2be16dbl(data) ^ 0x80008000; ··· 381 } 382 383 384 - static ssize_t ata_ctx_law(const u_char *userPtr, size_t userCount, 385 u_char frame[], ssize_t *frameUsed, 386 ssize_t frameLeft) 387 { ··· 443 } 444 445 446 - static ssize_t ata_ctx_s8(const u_char *userPtr, size_t userCount, 447 u_char frame[], ssize_t *frameUsed, 448 ssize_t frameLeft) 449 { ··· 478 if (bal < 0) { 479 if (userCount < 2) 480 break; 481 - if (get_user(data, (u_short *)userPtr)) 482 return -EFAULT; 483 userPtr += 2; 484 userCount -= 2; ··· 497 } 498 499 500 - static ssize_t ata_ctx_u8(const u_char *userPtr, size_t userCount, 501 u_char frame[], ssize_t *frameUsed, 502 ssize_t frameLeft) 503 { ··· 533 if (bal < 0) { 534 if (userCount < 2) 535 break; 536 - if (get_user(data, (u_short *)userPtr)) 537 return -EFAULT; 538 userPtr += 2; 539 data ^= 0x8080; ··· 553 } 554 555 556 - static ssize_t ata_ctx_s16be(const u_char *userPtr, size_t userCount, 557 u_char frame[], ssize_t *frameUsed, 558 ssize_t frameLeft) 559 { ··· 571 if (bal < 0) { 572 if (userCount < 2) 573 break; 574 - if (get_user(data, (u_short *)userPtr)) 575 return -EFAULT; 576 userPtr += 2; 577 userCount -= 2; ··· 590 if (bal < 0) { 591 if (userCount < 4) 592 break; 593 - if (get_user(data, (u_int *)userPtr)) 594 return -EFAULT; 595 userPtr += 4; 596 userCount -= 4; ··· 609 } 610 611 612 - static ssize_t ata_ctx_u16be(const u_char *userPtr, size_t userCount, 613 u_char frame[], ssize_t *frameUsed, 614 ssize_t frameLeft) 615 { ··· 627 if (bal < 0) { 628 if (userCount < 2) 629 break; 630 - if (get_user(data, (u_short *)userPtr)) 631 return -EFAULT; 632 userPtr += 2; 633 data ^= 0x8000; ··· 647 if (bal < 0) { 648 if (userCount < 4) 649 break; 650 - if (get_user(data, (u_int *)userPtr)) 651 return -EFAULT; 652 userPtr += 4; 653 data ^= 0x80008000; ··· 667 } 668 669 670 - static ssize_t ata_ctx_s16le(const u_char *userPtr, size_t userCount, 671 u_char frame[], ssize_t *frameUsed, 672 ssize_t frameLeft) 673 { ··· 685 if (bal < 0) { 686 if (userCount < 2) 687 break; 688 - if (get_user(data, (u_short *)userPtr)) 689 return -EFAULT; 690 userPtr += 2; 691 data = le2be16(data); ··· 705 if (bal < 0) { 706 if (userCount < 4) 707 break; 708 - if (get_user(data, (u_int *)userPtr)) 709 return -EFAULT; 710 userPtr += 4; 711 data = le2be16dbl(data); ··· 725 } 726 727 728 - static ssize_t ata_ctx_u16le(const u_char *userPtr, size_t userCount, 729 u_char frame[], ssize_t *frameUsed, 730 ssize_t frameLeft) 731 { ··· 743 if (bal < 0) { 744 if (userCount < 2) 745 break; 746 - if (get_user(data, (u_short *)userPtr)) 747 return -EFAULT; 748 userPtr += 2; 749 data = le2be16(data) ^ 0x8000; ··· 763 if (bal < 0) { 764 if (userCount < 4) 765 break; 766 - if (get_user(data, (u_int *)userPtr)) 767 return -EFAULT; 768 userPtr += 4; 769 data = le2be16dbl(data) ^ 0x80008000;
··· 67 * ++geert: split in even more functions (one per format) 68 */ 69 70 + static ssize_t ata_ct_law(const u_char __user *userPtr, size_t userCount, 71 u_char frame[], ssize_t *frameUsed, 72 ssize_t frameLeft); 73 + static ssize_t ata_ct_s8(const u_char __user *userPtr, size_t userCount, 74 u_char frame[], ssize_t *frameUsed, 75 ssize_t frameLeft); 76 + static ssize_t ata_ct_u8(const u_char __user *userPtr, size_t userCount, 77 u_char frame[], ssize_t *frameUsed, 78 ssize_t frameLeft); 79 + static ssize_t ata_ct_s16be(const u_char __user *userPtr, size_t userCount, 80 u_char frame[], ssize_t *frameUsed, 81 ssize_t frameLeft); 82 + static ssize_t ata_ct_u16be(const u_char __user *userPtr, size_t userCount, 83 u_char frame[], ssize_t *frameUsed, 84 ssize_t frameLeft); 85 + static ssize_t ata_ct_s16le(const u_char __user *userPtr, size_t userCount, 86 u_char frame[], ssize_t *frameUsed, 87 ssize_t frameLeft); 88 + static ssize_t ata_ct_u16le(const u_char __user *userPtr, size_t userCount, 89 u_char frame[], ssize_t *frameUsed, 90 ssize_t frameLeft); 91 + static ssize_t ata_ctx_law(const u_char __user *userPtr, size_t userCount, 92 u_char frame[], ssize_t *frameUsed, 93 ssize_t frameLeft); 94 + static ssize_t ata_ctx_s8(const u_char __user *userPtr, size_t userCount, 95 u_char frame[], ssize_t *frameUsed, 96 ssize_t frameLeft); 97 + static ssize_t ata_ctx_u8(const u_char __user *userPtr, size_t userCount, 98 u_char frame[], ssize_t *frameUsed, 99 ssize_t frameLeft); 100 + static ssize_t ata_ctx_s16be(const u_char __user *userPtr, size_t userCount, 101 u_char frame[], ssize_t *frameUsed, 102 ssize_t frameLeft); 103 + static ssize_t ata_ctx_u16be(const u_char __user *userPtr, size_t userCount, 104 u_char frame[], ssize_t *frameUsed, 105 ssize_t frameLeft); 106 + static ssize_t ata_ctx_s16le(const u_char __user *userPtr, size_t userCount, 107 u_char frame[], ssize_t *frameUsed, 108 ssize_t frameLeft); 109 + static ssize_t ata_ctx_u16le(const u_char __user *userPtr, size_t userCount, 110 u_char frame[], ssize_t *frameUsed, 111 ssize_t frameLeft); 112 ··· 151 /*** Translations ************************************************************/ 152 153 154 + static ssize_t ata_ct_law(const u_char __user *userPtr, size_t userCount, 155 u_char frame[], ssize_t *frameUsed, 156 ssize_t frameLeft) 157 { ··· 176 } 177 178 179 + static ssize_t ata_ct_s8(const u_char __user *userPtr, size_t userCount, 180 u_char frame[], ssize_t *frameUsed, 181 ssize_t frameLeft) 182 { ··· 194 } 195 196 197 + static ssize_t ata_ct_u8(const u_char __user *userPtr, size_t userCount, 198 u_char frame[], ssize_t *frameUsed, 199 ssize_t frameLeft) 200 { ··· 217 used = count*2; 218 while (count > 0) { 219 u_short data; 220 + if (get_user(data, (u_short __user *)userPtr)) 221 return -EFAULT; 222 userPtr += 2; 223 *p++ = data ^ 0x8080; ··· 229 } 230 231 232 + static ssize_t ata_ct_s16be(const u_char __user *userPtr, size_t userCount, 233 u_char frame[], ssize_t *frameUsed, 234 ssize_t frameLeft) 235 { ··· 241 used = count*2; 242 while (count > 0) { 243 u_short data; 244 + if (get_user(data, (u_short __user *)userPtr)) 245 return -EFAULT; 246 userPtr += 2; 247 *p++ = data; ··· 261 } 262 263 264 + static ssize_t ata_ct_u16be(const u_char __user *userPtr, size_t userCount, 265 u_char frame[], ssize_t *frameUsed, 266 ssize_t frameLeft) 267 { ··· 273 used = count*2; 274 while (count > 0) { 275 u_short data; 276 + if (get_user(data, (u_short __user *)userPtr)) 277 return -EFAULT; 278 userPtr += 2; 279 data ^= 0x8000; ··· 287 count = min_t(unsigned long, userCount, frameLeft)>>2; 288 used = count*4; 289 while (count > 0) { 290 + u_int data; 291 + if (get_user(data, (u_int __user *)userPtr)) 292 return -EFAULT; 293 userPtr += 4; 294 *p++ = data ^ 0x80008000; ··· 300 } 301 302 303 + static ssize_t ata_ct_s16le(const u_char __user *userPtr, size_t userCount, 304 u_char frame[], ssize_t *frameUsed, 305 ssize_t frameLeft) 306 { ··· 313 used = count*2; 314 while (count > 0) { 315 u_short data; 316 + if (get_user(data, (u_short __user *)userPtr)) 317 return -EFAULT; 318 userPtr += 2; 319 data = le2be16(data); ··· 328 used = count*4; 329 while (count > 0) { 330 u_long data; 331 + if (get_user(data, (u_int __user *)userPtr)) 332 return -EFAULT; 333 userPtr += 4; 334 data = le2be16dbl(data); ··· 341 } 342 343 344 + static ssize_t ata_ct_u16le(const u_char __user *userPtr, size_t userCount, 345 u_char frame[], ssize_t *frameUsed, 346 ssize_t frameLeft) 347 { ··· 354 used = count*2; 355 while (count > 0) { 356 u_short data; 357 + if (get_user(data, (u_short __user *)userPtr)) 358 return -EFAULT; 359 userPtr += 2; 360 data = le2be16(data) ^ 0x8000; ··· 368 used = count; 369 while (count > 0) { 370 u_long data; 371 + if (get_user(data, (u_int __user *)userPtr)) 372 return -EFAULT; 373 userPtr += 4; 374 data = le2be16dbl(data) ^ 0x80008000; ··· 381 } 382 383 384 + static ssize_t ata_ctx_law(const u_char __user *userPtr, size_t userCount, 385 u_char frame[], ssize_t *frameUsed, 386 ssize_t frameLeft) 387 { ··· 443 } 444 445 446 + static ssize_t ata_ctx_s8(const u_char __user *userPtr, size_t userCount, 447 u_char frame[], ssize_t *frameUsed, 448 ssize_t frameLeft) 449 { ··· 478 if (bal < 0) { 479 if (userCount < 2) 480 break; 481 + if (get_user(data, (u_short __user *)userPtr)) 482 return -EFAULT; 483 userPtr += 2; 484 userCount -= 2; ··· 497 } 498 499 500 + static ssize_t ata_ctx_u8(const u_char __user *userPtr, size_t userCount, 501 u_char frame[], ssize_t *frameUsed, 502 ssize_t frameLeft) 503 { ··· 533 if (bal < 0) { 534 if (userCount < 2) 535 break; 536 + if (get_user(data, (u_short __user *)userPtr)) 537 return -EFAULT; 538 userPtr += 2; 539 data ^= 0x8080; ··· 553 } 554 555 556 + static ssize_t ata_ctx_s16be(const u_char __user *userPtr, size_t userCount, 557 u_char frame[], ssize_t *frameUsed, 558 ssize_t frameLeft) 559 { ··· 571 if (bal < 0) { 572 if (userCount < 2) 573 break; 574 + if (get_user(data, (u_short __user *)userPtr)) 575 return -EFAULT; 576 userPtr += 2; 577 userCount -= 2; ··· 590 if (bal < 0) { 591 if (userCount < 4) 592 break; 593 + if (get_user(data, (u_int __user *)userPtr)) 594 return -EFAULT; 595 userPtr += 4; 596 userCount -= 4; ··· 609 } 610 611 612 + static ssize_t ata_ctx_u16be(const u_char __user *userPtr, size_t userCount, 613 u_char frame[], ssize_t *frameUsed, 614 ssize_t frameLeft) 615 { ··· 627 if (bal < 0) { 628 if (userCount < 2) 629 break; 630 + if (get_user(data, (u_short __user *)userPtr)) 631 return -EFAULT; 632 userPtr += 2; 633 data ^= 0x8000; ··· 647 if (bal < 0) { 648 if (userCount < 4) 649 break; 650 + if (get_user(data, (u_int __user *)userPtr)) 651 return -EFAULT; 652 userPtr += 4; 653 data ^= 0x80008000; ··· 667 } 668 669 670 + static ssize_t ata_ctx_s16le(const u_char __user *userPtr, size_t userCount, 671 u_char frame[], ssize_t *frameUsed, 672 ssize_t frameLeft) 673 { ··· 685 if (bal < 0) { 686 if (userCount < 2) 687 break; 688 + if (get_user(data, (u_short __user *)userPtr)) 689 return -EFAULT; 690 userPtr += 2; 691 data = le2be16(data); ··· 705 if (bal < 0) { 706 if (userCount < 4) 707 break; 708 + if (get_user(data, (u_int __user *)userPtr)) 709 return -EFAULT; 710 userPtr += 4; 711 data = le2be16dbl(data); ··· 725 } 726 727 728 + static ssize_t ata_ctx_u16le(const u_char __user *userPtr, size_t userCount, 729 u_char frame[], ssize_t *frameUsed, 730 ssize_t frameLeft) 731 { ··· 743 if (bal < 0) { 744 if (userCount < 2) 745 break; 746 + if (get_user(data, (u_short __user *)userPtr)) 747 return -EFAULT; 748 userPtr += 2; 749 data = le2be16(data) ^ 0x8000; ··· 763 if (bal < 0) { 764 if (userCount < 4) 765 break; 766 + if (get_user(data, (u_int __user *)userPtr)) 767 return -EFAULT; 768 userPtr += 4; 769 data = le2be16dbl(data) ^ 0x80008000;
+4 -4
sound/oss/dmasound/dmasound_paula.c
··· 157 * Native format 158 */ 159 160 - static ssize_t ami_ct_s8(const u_char *userPtr, size_t userCount, 161 u_char frame[], ssize_t *frameUsed, ssize_t frameLeft) 162 { 163 ssize_t count, used; ··· 190 */ 191 192 #define GENERATE_AMI_CT8(funcname, convsample) \ 193 - static ssize_t funcname(const u_char *userPtr, size_t userCount, \ 194 u_char frame[], ssize_t *frameUsed, \ 195 ssize_t frameLeft) \ 196 { \ ··· 241 */ 242 243 #define GENERATE_AMI_CT_16(funcname, convsample) \ 244 - static ssize_t funcname(const u_char *userPtr, size_t userCount, \ 245 u_char frame[], ssize_t *frameUsed, \ 246 ssize_t frameLeft) \ 247 { \ 248 - const u_short *ptr = (const u_short *)userPtr; \ 249 ssize_t count, used; \ 250 u_short data; \ 251 \
··· 157 * Native format 158 */ 159 160 + static ssize_t ami_ct_s8(const u_char __user *userPtr, size_t userCount, 161 u_char frame[], ssize_t *frameUsed, ssize_t frameLeft) 162 { 163 ssize_t count, used; ··· 190 */ 191 192 #define GENERATE_AMI_CT8(funcname, convsample) \ 193 + static ssize_t funcname(const u_char __user *userPtr, size_t userCount, \ 194 u_char frame[], ssize_t *frameUsed, \ 195 ssize_t frameLeft) \ 196 { \ ··· 241 */ 242 243 #define GENERATE_AMI_CT_16(funcname, convsample) \ 244 + static ssize_t funcname(const u_char __user *userPtr, size_t userCount, \ 245 u_char frame[], ssize_t *frameUsed, \ 246 ssize_t frameLeft) \ 247 { \ 248 + const u_short __user *ptr = (const u_short __user *)userPtr; \ 249 ssize_t count, used; \ 250 u_short data; \ 251 \
+9 -9
sound/oss/dmasound/dmasound_q40.c
··· 58 59 60 /* userCount, frameUsed, frameLeft == byte counts */ 61 - static ssize_t q40_ct_law(const u_char *userPtr, size_t userCount, 62 u_char frame[], ssize_t *frameUsed, 63 ssize_t frameLeft) 64 { ··· 79 } 80 81 82 - static ssize_t q40_ct_s8(const u_char *userPtr, size_t userCount, 83 u_char frame[], ssize_t *frameUsed, 84 ssize_t frameLeft) 85 { ··· 98 return used; 99 } 100 101 - static ssize_t q40_ct_u8(const u_char *userPtr, size_t userCount, 102 u_char frame[], ssize_t *frameUsed, 103 ssize_t frameLeft) 104 { ··· 114 115 116 /* a bit too complicated to optimise right now ..*/ 117 - static ssize_t q40_ctx_law(const u_char *userPtr, size_t userCount, 118 u_char frame[], ssize_t *frameUsed, 119 ssize_t frameLeft) 120 { ··· 152 } 153 154 155 - static ssize_t q40_ctx_s8(const u_char *userPtr, size_t userCount, 156 u_char frame[], ssize_t *frameUsed, 157 ssize_t frameLeft) 158 { ··· 189 } 190 191 192 - static ssize_t q40_ctx_u8(const u_char *userPtr, size_t userCount, 193 u_char frame[], ssize_t *frameUsed, 194 ssize_t frameLeft) 195 { ··· 224 } 225 226 /* compressing versions */ 227 - static ssize_t q40_ctc_law(const u_char *userPtr, size_t userCount, 228 u_char frame[], ssize_t *frameUsed, 229 ssize_t frameLeft) 230 { ··· 265 } 266 267 268 - static ssize_t q40_ctc_s8(const u_char *userPtr, size_t userCount, 269 u_char frame[], ssize_t *frameUsed, 270 ssize_t frameLeft) 271 { ··· 304 } 305 306 307 - static ssize_t q40_ctc_u8(const u_char *userPtr, size_t userCount, 308 u_char frame[], ssize_t *frameUsed, 309 ssize_t frameLeft) 310 {
··· 58 59 60 /* userCount, frameUsed, frameLeft == byte counts */ 61 + static ssize_t q40_ct_law(const u_char __user *userPtr, size_t userCount, 62 u_char frame[], ssize_t *frameUsed, 63 ssize_t frameLeft) 64 { ··· 79 } 80 81 82 + static ssize_t q40_ct_s8(const u_char __user *userPtr, size_t userCount, 83 u_char frame[], ssize_t *frameUsed, 84 ssize_t frameLeft) 85 { ··· 98 return used; 99 } 100 101 + static ssize_t q40_ct_u8(const u_char __user *userPtr, size_t userCount, 102 u_char frame[], ssize_t *frameUsed, 103 ssize_t frameLeft) 104 { ··· 114 115 116 /* a bit too complicated to optimise right now ..*/ 117 + static ssize_t q40_ctx_law(const u_char __user *userPtr, size_t userCount, 118 u_char frame[], ssize_t *frameUsed, 119 ssize_t frameLeft) 120 { ··· 152 } 153 154 155 + static ssize_t q40_ctx_s8(const u_char __user *userPtr, size_t userCount, 156 u_char frame[], ssize_t *frameUsed, 157 ssize_t frameLeft) 158 { ··· 189 } 190 191 192 + static ssize_t q40_ctx_u8(const u_char __user *userPtr, size_t userCount, 193 u_char frame[], ssize_t *frameUsed, 194 ssize_t frameLeft) 195 { ··· 224 } 225 226 /* compressing versions */ 227 + static ssize_t q40_ctc_law(const u_char __user *userPtr, size_t userCount, 228 u_char frame[], ssize_t *frameUsed, 229 ssize_t frameLeft) 230 { ··· 265 } 266 267 268 + static ssize_t q40_ctc_s8(const u_char __user *userPtr, size_t userCount, 269 u_char frame[], ssize_t *frameUsed, 270 ssize_t frameLeft) 271 { ··· 304 } 305 306 307 + static ssize_t q40_ctc_u8(const u_char __user *userPtr, size_t userCount, 308 u_char frame[], ssize_t *frameUsed, 309 ssize_t frameLeft) 310 {