Message ID | 20210318151122.2493096-4-amadeuszx.slawinski@linux.intel.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Fix SND_HDA_PREALLOC issue | expand |
On Thu, 18 Mar 2021 16:11:22 +0100, Amadeusz Sławiński wrote: > > This reverts commit f8e4ae10de43fbb7ce85f79e04eca2988b6b2c40. It should be a format of commit ("description ...") as checkpatch.pl would complain. The commit f8e4ae10de43 itself is a revert of commit c31427d0d21e, and you need to give an explanation why the revert-of-a-revert can work better at this time. thanks, Takashi > On systems where there is a lot of FrontEnds, when > CONFIG_SND_HDA_PREALLOC_SIZE != 0 ALSA core allocates memory for each > FE, which may cause out of memory problems due to per card limit. Force > config to 0 on X86, so memory will be allocated on as needed basis. > > Bug: https://bugzilla.kernel.org/show_bug.cgi?id=201251#c322 > Suggested-by: Takashi Iwai <tiwai@suse.de> > Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> > --- > sound/hda/Kconfig | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/sound/hda/Kconfig b/sound/hda/Kconfig > index 57595f1552c9..741179ccbd4e 100644 > --- a/sound/hda/Kconfig > +++ b/sound/hda/Kconfig > @@ -21,17 +21,16 @@ config SND_HDA_EXT_CORE > select SND_HDA_CORE > > config SND_HDA_PREALLOC_SIZE > - int "Pre-allocated buffer size for HD-audio driver" > + int "Pre-allocated buffer size for HD-audio driver" if !SND_DMA_SGBUF > range 0 32768 > - default 2048 if SND_DMA_SGBUF > + default 0 if SND_DMA_SGBUF > default 64 if !SND_DMA_SGBUF > help > Specifies the default pre-allocated buffer-size in kB for the > HD-audio driver. A larger buffer (e.g. 2048) is preferred > for systems using PulseAudio. The default 64 is chosen just > for compatibility reasons. > - On x86 systems, the default is 2048 as a reasonable value for > - most of modern systems. > + On x86 systems, the default is zero as we need no preallocation. > > Note that the pre-allocation size can be changed dynamically > via a proc file (/proc/asound/card*/pcm*/sub*/prealloc), too. > -- > 2.25.1 >
On 3/18/2021 4:32 PM, Takashi Iwai wrote: > On Thu, 18 Mar 2021 16:11:22 +0100, > Amadeusz Sławiński wrote: >> >> This reverts commit f8e4ae10de43fbb7ce85f79e04eca2988b6b2c40. > > It should be a format of commit ("description ...") as checkpatch.pl > would complain. The commit f8e4ae10de43 itself is a revert of commit > c31427d0d21e, and you need to give an explanation why the > revert-of-a-revert can work better at this time. > I don't mind improving it, however it seems like there is exception done in checkpatch for "This reverts commit", so there is no warning on this line. Will add explanation. > > thanks, > > Takashi > >> On systems where there is a lot of FrontEnds, when >> CONFIG_SND_HDA_PREALLOC_SIZE != 0 ALSA core allocates memory for each >> FE, which may cause out of memory problems due to per card limit. Force >> config to 0 on X86, so memory will be allocated on as needed basis. >> >> Bug: https://bugzilla.kernel.org/show_bug.cgi?id=201251#c322 >> Suggested-by: Takashi Iwai <tiwai@suse.de> >> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> >> --- >> sound/hda/Kconfig | 7 +++---- >> 1 file changed, 3 insertions(+), 4 deletions(-) >> >> diff --git a/sound/hda/Kconfig b/sound/hda/Kconfig >> index 57595f1552c9..741179ccbd4e 100644 >> --- a/sound/hda/Kconfig >> +++ b/sound/hda/Kconfig >> @@ -21,17 +21,16 @@ config SND_HDA_EXT_CORE >> select SND_HDA_CORE >> >> config SND_HDA_PREALLOC_SIZE >> - int "Pre-allocated buffer size for HD-audio driver" >> + int "Pre-allocated buffer size for HD-audio driver" if !SND_DMA_SGBUF >> range 0 32768 >> - default 2048 if SND_DMA_SGBUF >> + default 0 if SND_DMA_SGBUF >> default 64 if !SND_DMA_SGBUF >> help >> Specifies the default pre-allocated buffer-size in kB for the >> HD-audio driver. A larger buffer (e.g. 2048) is preferred >> for systems using PulseAudio. The default 64 is chosen just >> for compatibility reasons. >> - On x86 systems, the default is 2048 as a reasonable value for >> - most of modern systems. >> + On x86 systems, the default is zero as we need no preallocation. >> >> Note that the pre-allocation size can be changed dynamically >> via a proc file (/proc/asound/card*/pcm*/sub*/prealloc), too. >> -- >> 2.25.1 >>
diff --git a/sound/hda/Kconfig b/sound/hda/Kconfig index 57595f1552c9..741179ccbd4e 100644 --- a/sound/hda/Kconfig +++ b/sound/hda/Kconfig @@ -21,17 +21,16 @@ config SND_HDA_EXT_CORE select SND_HDA_CORE config SND_HDA_PREALLOC_SIZE - int "Pre-allocated buffer size for HD-audio driver" + int "Pre-allocated buffer size for HD-audio driver" if !SND_DMA_SGBUF range 0 32768 - default 2048 if SND_DMA_SGBUF + default 0 if SND_DMA_SGBUF default 64 if !SND_DMA_SGBUF help Specifies the default pre-allocated buffer-size in kB for the HD-audio driver. A larger buffer (e.g. 2048) is preferred for systems using PulseAudio. The default 64 is chosen just for compatibility reasons. - On x86 systems, the default is 2048 as a reasonable value for - most of modern systems. + On x86 systems, the default is zero as we need no preallocation. Note that the pre-allocation size can be changed dynamically via a proc file (/proc/asound/card*/pcm*/sub*/prealloc), too.
This reverts commit f8e4ae10de43fbb7ce85f79e04eca2988b6b2c40. On systems where there is a lot of FrontEnds, when CONFIG_SND_HDA_PREALLOC_SIZE != 0 ALSA core allocates memory for each FE, which may cause out of memory problems due to per card limit. Force config to 0 on X86, so memory will be allocated on as needed basis. Bug: https://bugzilla.kernel.org/show_bug.cgi?id=201251#c322 Suggested-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> --- sound/hda/Kconfig | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)