snd_pcm_lib_mmap_vmalloc() was supposed to be implemented with somewhat special for vmalloc handling, but in the end, this turned to just the default handler, i.e. NULL. As the situation has never changed over decades, let's rip it off.
Unified · Split
| @@ -457,7 +457,6 @@ static const struct snd_pcm_ops pcm_ops = { · 456 unmodified lines | |||
| 457 | .trigger = pcm_trigger, | 457 | .trigger = pcm_trigger, |
| 458 | .pointer = pcm_pointer, | 458 | .pointer = pcm_pointer, |
| 459 | .page = snd_pcm_lib_get_vmalloc_page, | 459 | .page = snd_pcm_lib_get_vmalloc_page, |
| 460 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 461 | }; | 460 | }; |
| 462 | 461 | ||
| 463 | static int split_arg_list(char *buf, char **card_name, u16 *ch_num, | 462 | static int split_arg_list(char *buf, char **card_name, u16 *ch_num, |
| @@ -1342,8 +1342,6 @@ int snd_pcm_lib_mmap_iomem(struct snd_pcm_substream *substream, struct vm_area_s · 1341 unmodified lines | |||
| 1342 | #define snd_pcm_lib_mmap_iomem NULL | 1342 | #define snd_pcm_lib_mmap_iomem NULL |
| 1343 | #endif | 1343 | #endif |
| 1344 | 1344 | ||
| 1345 | #define snd_pcm_lib_mmap_vmalloc NULL | ||
| 1346 | |||
| 1347 | /** | 1345 | /** |
| 1348 | * snd_pcm_limit_isa_dma_size - Get the max size fitting with ISA DMA transfer | 1346 | * snd_pcm_limit_isa_dma_size - Get the max size fitting with ISA DMA transfer |
| 1349 | * @dma: DMA number | 1347 | * @dma: DMA number |
| @@ -778,7 +778,6 @@ static const struct snd_pcm_ops loopback_pcm_ops = { · 777 unmodified lines | |||
| 778 | .trigger = loopback_trigger, | 778 | .trigger = loopback_trigger, |
| 779 | .pointer = loopback_pointer, | 779 | .pointer = loopback_pointer, |
| 780 | .page = snd_pcm_lib_get_vmalloc_page, | 780 | .page = snd_pcm_lib_get_vmalloc_page, |
| 781 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 782 | }; | 781 | }; |
| 783 | 782 | ||
| 784 | static int loopback_pcm_new(struct loopback *loopback, | 783 | static int loopback_pcm_new(struct loopback *loopback, |
| @@ -883,7 +883,6 @@ static const struct snd_pcm_ops vx_pcm_playback_ops = { · 882 unmodified lines | |||
| 883 | .trigger = vx_pcm_trigger, | 883 | .trigger = vx_pcm_trigger, |
| 884 | .pointer = vx_pcm_playback_pointer, | 884 | .pointer = vx_pcm_playback_pointer, |
| 885 | .page = snd_pcm_lib_get_vmalloc_page, | 885 | .page = snd_pcm_lib_get_vmalloc_page, |
| 886 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 887 | }; | 886 | }; |
| 888 | 887 | ||
| 889 | 888 | ||
| @@ -1105,7 +1104,6 @@ static const struct snd_pcm_ops vx_pcm_capture_ops = { · 215 unmodified lines | |||
| 1105 | .trigger = vx_pcm_trigger, | 1104 | .trigger = vx_pcm_trigger, |
| 1106 | .pointer = vx_pcm_capture_pointer, | 1105 | .pointer = vx_pcm_capture_pointer, |
| 1107 | .page = snd_pcm_lib_get_vmalloc_page, | 1106 | .page = snd_pcm_lib_get_vmalloc_page, |
| 1108 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 1109 | }; | 1107 | }; |
| 1110 | 1108 | ||
| 1111 | 1109 | ||
| @@ -373,7 +373,6 @@ int snd_bebob_create_pcm_devices(struct snd_bebob *bebob) · 372 unmodified lines | |||
| 373 | .pointer = pcm_playback_pointer, | 373 | .pointer = pcm_playback_pointer, |
| 374 | .ack = pcm_playback_ack, | 374 | .ack = pcm_playback_ack, |
| 375 | .page = snd_pcm_lib_get_vmalloc_page, | 375 | .page = snd_pcm_lib_get_vmalloc_page, |
| 376 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 377 | }; | 376 | }; |
| 378 | struct snd_pcm *pcm; | 377 | struct snd_pcm *pcm; |
| 379 | int err; | 378 | int err; |
| @@ -412,7 +412,6 @@ int snd_dice_create_pcm(struct snd_dice *dice) · 411 unmodified lines | |||
| 412 | .pointer = capture_pointer, | 412 | .pointer = capture_pointer, |
| 413 | .ack = capture_ack, | 413 | .ack = capture_ack, |
| 414 | .page = snd_pcm_lib_get_vmalloc_page, | 414 | .page = snd_pcm_lib_get_vmalloc_page, |
| 415 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 416 | }; | 415 | }; |
| 417 | static const struct snd_pcm_ops playback_ops = { | 416 | static const struct snd_pcm_ops playback_ops = { |
| 418 | .open = pcm_open, | 417 | .open = pcm_open, |
| @@ -425,7 +424,6 @@ int snd_dice_create_pcm(struct snd_dice *dice) · 6 unmodified lines | |||
| 425 | .pointer = playback_pointer, | 424 | .pointer = playback_pointer, |
| 426 | .ack = playback_ack, | 425 | .ack = playback_ack, |
| 427 | .page = snd_pcm_lib_get_vmalloc_page, | 426 | .page = snd_pcm_lib_get_vmalloc_page, |
| 428 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 429 | }; | 427 | }; |
| 430 | struct snd_pcm *pcm; | 428 | struct snd_pcm *pcm; |
| 431 | unsigned int capture, playback; | 429 | unsigned int capture, playback; |
| @@ -352,7 +352,6 @@ int snd_dg00x_create_pcm_devices(struct snd_dg00x *dg00x) · 351 unmodified lines | |||
| 352 | .pointer = pcm_playback_pointer, | 352 | .pointer = pcm_playback_pointer, |
| 353 | .ack = pcm_playback_ack, | 353 | .ack = pcm_playback_ack, |
| 354 | .page = snd_pcm_lib_get_vmalloc_page, | 354 | .page = snd_pcm_lib_get_vmalloc_page, |
| 355 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 356 | }; | 355 | }; |
| 357 | struct snd_pcm *pcm; | 356 | struct snd_pcm *pcm; |
| 358 | int err; | 357 | int err; |
| @@ -383,7 +383,6 @@ int snd_ff_create_pcm_devices(struct snd_ff *ff) · 382 unmodified lines | |||
| 383 | .pointer = pcm_playback_pointer, | 383 | .pointer = pcm_playback_pointer, |
| 384 | .ack = pcm_playback_ack, | 384 | .ack = pcm_playback_ack, |
| 385 | .page = snd_pcm_lib_get_vmalloc_page, | 385 | .page = snd_pcm_lib_get_vmalloc_page, |
| 386 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 387 | }; | 386 | }; |
| 388 | struct snd_pcm *pcm; | 387 | struct snd_pcm *pcm; |
| 389 | int err; | 388 | int err; |
| @@ -397,7 +397,6 @@ int snd_efw_create_pcm_devices(struct snd_efw *efw) · 396 unmodified lines | |||
| 397 | .pointer = pcm_playback_pointer, | 397 | .pointer = pcm_playback_pointer, |
| 398 | .ack = pcm_playback_ack, | 398 | .ack = pcm_playback_ack, |
| 399 | .page = snd_pcm_lib_get_vmalloc_page, | 399 | .page = snd_pcm_lib_get_vmalloc_page, |
| 400 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 401 | }; | 400 | }; |
| 402 | struct snd_pcm *pcm; | 401 | struct snd_pcm *pcm; |
| 403 | int err; | 402 | int err; |
| @@ -454,7 +454,6 @@ static int isight_create_pcm(struct isight *isight) · 453 unmodified lines | |||
| 454 | .trigger = isight_trigger, | 454 | .trigger = isight_trigger, |
| 455 | .pointer = isight_pointer, | 455 | .pointer = isight_pointer, |
| 456 | .page = snd_pcm_lib_get_vmalloc_page, | 456 | .page = snd_pcm_lib_get_vmalloc_page, |
| 457 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 458 | }; | 457 | }; |
| 459 | struct snd_pcm *pcm; | 458 | struct snd_pcm *pcm; |
| 460 | int err; | 459 | int err; |
| @@ -363,7 +363,6 @@ int snd_motu_create_pcm_devices(struct snd_motu *motu) · 362 unmodified lines | |||
| 363 | .pointer = capture_pointer, | 363 | .pointer = capture_pointer, |
| 364 | .ack = capture_ack, | 364 | .ack = capture_ack, |
| 365 | .page = snd_pcm_lib_get_vmalloc_page, | 365 | .page = snd_pcm_lib_get_vmalloc_page, |
| 366 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 367 | }; | 366 | }; |
| 368 | static const struct snd_pcm_ops playback_ops = { | 367 | static const struct snd_pcm_ops playback_ops = { |
| 369 | .open = pcm_open, | 368 | .open = pcm_open, |
| @@ -376,7 +375,6 @@ int snd_motu_create_pcm_devices(struct snd_motu *motu) · 6 unmodified lines | |||
| 376 | .pointer = playback_pointer, | 375 | .pointer = playback_pointer, |
| 377 | .ack = playback_ack, | 376 | .ack = playback_ack, |
| 378 | .page = snd_pcm_lib_get_vmalloc_page, | 377 | .page = snd_pcm_lib_get_vmalloc_page, |
| 379 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 380 | }; | 378 | }; |
| 381 | struct snd_pcm *pcm; | 379 | struct snd_pcm *pcm; |
| 382 | int err; | 380 | int err; |
| @@ -389,7 +389,6 @@ int snd_oxfw_create_pcm(struct snd_oxfw *oxfw) · 388 unmodified lines | |||
| 389 | .pointer = pcm_capture_pointer, | 389 | .pointer = pcm_capture_pointer, |
| 390 | .ack = pcm_capture_ack, | 390 | .ack = pcm_capture_ack, |
| 391 | .page = snd_pcm_lib_get_vmalloc_page, | 391 | .page = snd_pcm_lib_get_vmalloc_page, |
| 392 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 393 | }; | 392 | }; |
| 394 | static const struct snd_pcm_ops playback_ops = { | 393 | static const struct snd_pcm_ops playback_ops = { |
| 395 | .open = pcm_open, | 394 | .open = pcm_open, |
| @@ -402,7 +401,6 @@ int snd_oxfw_create_pcm(struct snd_oxfw *oxfw) · 6 unmodified lines | |||
| 402 | .pointer = pcm_playback_pointer, | 401 | .pointer = pcm_playback_pointer, |
| 403 | .ack = pcm_playback_ack, | 402 | .ack = pcm_playback_ack, |
| 404 | .page = snd_pcm_lib_get_vmalloc_page, | 403 | .page = snd_pcm_lib_get_vmalloc_page, |
| 405 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 406 | }; | 404 | }; |
| 407 | struct snd_pcm *pcm; | 405 | struct snd_pcm *pcm; |
| 408 | unsigned int cap = 0; | 406 | unsigned int cap = 0; |
| @@ -279,7 +279,6 @@ int snd_tscm_create_pcm_devices(struct snd_tscm *tscm) · 278 unmodified lines | |||
| 279 | .pointer = pcm_playback_pointer, | 279 | .pointer = pcm_playback_pointer, |
| 280 | .ack = pcm_playback_ack, | 280 | .ack = pcm_playback_ack, |
| 281 | .page = snd_pcm_lib_get_vmalloc_page, | 281 | .page = snd_pcm_lib_get_vmalloc_page, |
| 282 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 283 | }; | 282 | }; |
| 284 | struct snd_pcm *pcm; | 283 | struct snd_pcm *pcm; |
| 285 | int err; | 284 | int err; |
| @@ -685,7 +685,6 @@ static const struct snd_pcm_ops snd_sgio2audio_playback1_ops = { · 684 unmodified lines | |||
| 685 | .trigger = snd_sgio2audio_pcm_trigger, | 685 | .trigger = snd_sgio2audio_pcm_trigger, |
| 686 | .pointer = snd_sgio2audio_pcm_pointer, | 686 | .pointer = snd_sgio2audio_pcm_pointer, |
| 687 | .page = snd_pcm_lib_get_vmalloc_page, | 687 | .page = snd_pcm_lib_get_vmalloc_page, |
| 688 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 689 | }; | 688 | }; |
| 690 | 689 | ||
| 691 | static const struct snd_pcm_ops snd_sgio2audio_playback2_ops = { | 690 | static const struct snd_pcm_ops snd_sgio2audio_playback2_ops = { |
| @@ -698,7 +697,6 @@ static const struct snd_pcm_ops snd_sgio2audio_playback2_ops = { · 6 unmodified lines | |||
| 698 | .trigger = snd_sgio2audio_pcm_trigger, | 697 | .trigger = snd_sgio2audio_pcm_trigger, |
| 699 | .pointer = snd_sgio2audio_pcm_pointer, | 698 | .pointer = snd_sgio2audio_pcm_pointer, |
| 700 | .page = snd_pcm_lib_get_vmalloc_page, | 699 | .page = snd_pcm_lib_get_vmalloc_page, |
| 701 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 702 | }; | 700 | }; |
| 703 | 701 | ||
| 704 | static const struct snd_pcm_ops snd_sgio2audio_capture_ops = { | 702 | static const struct snd_pcm_ops snd_sgio2audio_capture_ops = { |
| @@ -711,7 +709,6 @@ static const struct snd_pcm_ops snd_sgio2audio_capture_ops = { · 6 unmodified lines | |||
| 711 | .trigger = snd_sgio2audio_pcm_trigger, | 709 | .trigger = snd_sgio2audio_pcm_trigger, |
| 712 | .pointer = snd_sgio2audio_pcm_pointer, | 710 | .pointer = snd_sgio2audio_pcm_pointer, |
| 713 | .page = snd_pcm_lib_get_vmalloc_page, | 711 | .page = snd_pcm_lib_get_vmalloc_page, |
| 714 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 715 | }; | 712 | }; |
| 716 | 713 | ||
| 717 | /* | 714 | /* |
| @@ -276,7 +276,6 @@ static const struct snd_pcm_ops pdacf_pcm_capture_ops = { · 275 unmodified lines | |||
| 276 | .trigger = pdacf_pcm_trigger, | 276 | .trigger = pdacf_pcm_trigger, |
| 277 | .pointer = pdacf_pcm_capture_pointer, | 277 | .pointer = pdacf_pcm_capture_pointer, |
| 278 | .page = snd_pcm_lib_get_vmalloc_page, | 278 | .page = snd_pcm_lib_get_vmalloc_page, |
| 279 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 280 | }; | 279 | }; |
| 281 | 280 | ||
| 282 | 281 | ||
| @@ -268,7 +268,6 @@ static const struct snd_pcm_ops rt5514_spi_pcm_ops = { · 267 unmodified lines | |||
| 268 | .hw_params = rt5514_spi_hw_params, | 268 | .hw_params = rt5514_spi_hw_params, |
| 269 | .hw_free = rt5514_spi_hw_free, | 269 | .hw_free = rt5514_spi_hw_free, |
| 270 | .pointer = rt5514_spi_pcm_pointer, | 270 | .pointer = rt5514_spi_pcm_pointer, |
| 271 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 272 | .page = snd_pcm_lib_get_vmalloc_page, | 271 | .page = snd_pcm_lib_get_vmalloc_page, |
| 273 | }; | 272 | }; |
| 274 | 273 | ||
| @@ -565,7 +565,6 @@ static const struct snd_pcm_ops pcm_ops = { · 564 unmodified lines | |||
| 565 | .trigger = usb6fire_pcm_trigger, | 565 | .trigger = usb6fire_pcm_trigger, |
| 566 | .pointer = usb6fire_pcm_pointer, | 566 | .pointer = usb6fire_pcm_pointer, |
| 567 | .page = snd_pcm_lib_get_vmalloc_page, | 567 | .page = snd_pcm_lib_get_vmalloc_page, |
| 568 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 569 | }; | 568 | }; |
| 570 | 569 | ||
| 571 | static void usb6fire_pcm_init_urb(struct pcm_urb *urb, | 570 | static void usb6fire_pcm_init_urb(struct pcm_urb *urb, |
| @@ -348,7 +348,6 @@ static const struct snd_pcm_ops snd_usb_caiaq_ops = { · 347 unmodified lines | |||
| 348 | .trigger = snd_usb_caiaq_pcm_trigger, | 348 | .trigger = snd_usb_caiaq_pcm_trigger, |
| 349 | .pointer = snd_usb_caiaq_pcm_pointer, | 349 | .pointer = snd_usb_caiaq_pcm_pointer, |
| 350 | .page = snd_pcm_lib_get_vmalloc_page, | 350 | .page = snd_pcm_lib_get_vmalloc_page, |
| 351 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 352 | }; | 351 | }; |
| 353 | 352 | ||
| 354 | static void check_for_elapsed_periods(struct snd_usb_caiaqdev *cdev, | 353 | static void check_for_elapsed_periods(struct snd_usb_caiaqdev *cdev, |
| @@ -523,7 +523,6 @@ static const struct snd_pcm_ops pcm_ops = { · 522 unmodified lines | |||
| 523 | .trigger = hiface_pcm_trigger, | 523 | .trigger = hiface_pcm_trigger, |
| 524 | .pointer = hiface_pcm_pointer, | 524 | .pointer = hiface_pcm_pointer, |
| 525 | .page = snd_pcm_lib_get_vmalloc_page, | 525 | .page = snd_pcm_lib_get_vmalloc_page, |
| 526 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 527 | }; | 526 | }; |
| 528 | 527 | ||
| 529 | static int hiface_pcm_init_urb(struct pcm_urb *urb, | 528 | static int hiface_pcm_init_urb(struct pcm_urb *urb, |
| @@ -900,7 +900,6 @@ static const struct snd_pcm_ops capture_pcm_ops = { · 899 unmodified lines | |||
| 900 | .trigger = capture_pcm_trigger, | 900 | .trigger = capture_pcm_trigger, |
| 901 | .pointer = capture_pcm_pointer, | 901 | .pointer = capture_pcm_pointer, |
| 902 | .page = snd_pcm_lib_get_vmalloc_page, | 902 | .page = snd_pcm_lib_get_vmalloc_page, |
| 903 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 904 | }; | 903 | }; |
| 905 | 904 | ||
| 906 | static const struct snd_pcm_ops playback_pcm_ops = { | 905 | static const struct snd_pcm_ops playback_pcm_ops = { |
| @@ -913,7 +912,6 @@ static const struct snd_pcm_ops playback_pcm_ops = { · 6 unmodified lines | |||
| 913 | .trigger = playback_pcm_trigger, | 912 | .trigger = playback_pcm_trigger, |
| 914 | .pointer = playback_pcm_pointer, | 913 | .pointer = playback_pcm_pointer, |
| 915 | .page = snd_pcm_lib_get_vmalloc_page, | 914 | .page = snd_pcm_lib_get_vmalloc_page, |
| 916 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 917 | }; | 915 | }; |
| 918 | 916 | ||
| 919 | static const struct uac_format_type_i_discrete_descriptor * | 917 | static const struct uac_format_type_i_discrete_descriptor * |
| @@ -1694,7 +1694,6 @@ static const struct snd_pcm_ops snd_usb_playback_ops = { · 1693 unmodified lines | |||
| 1694 | .trigger = snd_usb_substream_playback_trigger, | 1694 | .trigger = snd_usb_substream_playback_trigger, |
| 1695 | .pointer = snd_usb_pcm_pointer, | 1695 | .pointer = snd_usb_pcm_pointer, |
| 1696 | .page = snd_pcm_lib_get_vmalloc_page, | 1696 | .page = snd_pcm_lib_get_vmalloc_page, |
| 1697 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 1698 | }; | 1697 | }; |
| 1699 | 1698 | ||
| 1700 | static const struct snd_pcm_ops snd_usb_capture_ops = { | 1699 | static const struct snd_pcm_ops snd_usb_capture_ops = { |
| @@ -1707,7 +1706,6 @@ static const struct snd_pcm_ops snd_usb_capture_ops = { · 6 unmodified lines | |||
| 1707 | .trigger = snd_usb_substream_capture_trigger, | 1706 | .trigger = snd_usb_substream_capture_trigger, |
| 1708 | .pointer = snd_usb_pcm_pointer, | 1707 | .pointer = snd_usb_pcm_pointer, |
| 1709 | .page = snd_pcm_lib_get_vmalloc_page, | 1708 | .page = snd_pcm_lib_get_vmalloc_page, |
| 1710 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
| 1711 | }; | 1709 | }; |
| 1712 | 1710 | ||
| 1713 | static const struct snd_pcm_ops snd_usb_playback_dev_ops = { | 1711 | static const struct snd_pcm_ops snd_usb_playback_dev_ops = { |