Message ID | 20230406143019.6709-1-tzimmermann@suse.de |
---|---|
Headers | show |
Series | arch: Consolidate <asm/fb.h> | expand |
On Thu, Apr 6, 2023, at 16:30, Thomas Zimmermann wrote: > Generic implementations of fb_pgprotect() and fb_is_primary_device() > have been in the source code for a long time. Prepare the header file > to make use of them. > > Improve the code by using an inline function for fb_pgprotect() > and by removing include statements. The default mode set by > fb_pgprotect() is now writecombine, which is what most platforms > want. > > Symbols are protected by preprocessor guards. Architectures that > provide a symbol need to define a preprocessor token of the same > name and value. Otherwise the header file will provide a generic > implementation. This pattern has been taken from <asm/io.h>. > > v2: > * use writecombine mappings by default (Arnd) > > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Acked-by: Arnd Bergmann <arnd@arndb.de>
On Thu, Apr 6, 2023, at 16:30, Thomas Zimmermann wrote: > + > static inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma, > unsigned long off) > { > vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); > } > +#define fb_pgprotect fb_pgprotect I still feel that for architectures like arc that don't have pgprot_writecombine(), it would b best to go with the generic implementation that currently behaves the exact same way. If pgprot_writecombine() gets added in the future, it would cause the architecture to behave as expected rather than introducing the same bug that mips has. Arnd
Am 06.04.23 um 16:43 schrieb Arnd Bergmann: > On Thu, Apr 6, 2023, at 16:30, Thomas Zimmermann wrote: >> + >> static inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma, >> unsigned long off) >> { >> vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); >> } >> +#define fb_pgprotect fb_pgprotect > > I still feel that for architectures like arc that don't have > pgprot_writecombine(), it would b best to go with the > generic implementation that currently behaves the exact > same way. If pgprot_writecombine() gets added in the future, > it would cause the architecture to behave as expected rather > than introducing the same bug that mips has. OK, I'll change it. > > Arnd