Page MenuHomeFreeBSD

D56438.diff
No OneTemporary

D56438.diff

Index: sys/compat/linuxkpi/common/include/linux/highmem.h
===================================================================
--- sys/compat/linuxkpi/common/include/linux/highmem.h
+++ sys/compat/linuxkpi/common/include/linux/highmem.h
@@ -99,6 +99,20 @@
return (kmap(page));
}
+static inline void *
+kmap_local_folio(struct folio *folio, size_t offset)
+{
+ struct page *page;
+ vm_offset_t *vaddr;
+
+ page = &folio->page;
+ vaddr = kmap_local_page(page);
+
+ vaddr += offset;
+
+ return (vaddr);
+}
+
static inline void *
kmap_local_page_prot(struct page *page, pgprot_t prot)
{
@@ -168,4 +182,13 @@
kunmap_local(to);
}
+static inline void
+memcpy_to_folio(struct folio *folio, size_t offset, const char *from, size_t len)
+{
+ struct page *page;
+
+ page = &folio->page;
+ memcpy_to_page(page, offset, from, len);
+}
+
#endif /* _LINUXKPI_LINUX_HIGHMEM_H_ */
Index: sys/compat/linuxkpi/common/include/linux/mm.h
===================================================================
--- sys/compat/linuxkpi/common/include/linux/mm.h
+++ sys/compat/linuxkpi/common/include/linux/mm.h
@@ -264,6 +264,7 @@
}
#define offset_in_page(off) ((unsigned long)(off) & (PAGE_SIZE - 1))
+#define offset_in_folio(folio, p) ((unsigned long)(p) & (folio_size(folio) - 1))
static inline void
set_page_dirty(struct page *page)

File Metadata

Mime Type
text/plain
Expires
Wed, Apr 22, 11:41 AM (2 h, 29 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31750322
Default Alt Text
D56438.diff (1 KB)

Event Timeline