blob: 2024bdc6d79d6704ec8a553bde82d99cc661243e [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
Ben Cheng654325d2012-03-07 21:13:49 -080010 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080017 ****************************************************************************
18 ****************************************************************************/
19#ifndef _LINUX_BACKING_DEV_H
20#define _LINUX_BACKING_DEV_H
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080021#include <asm/atomic.h>
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080022enum bdi_state {
Ben Cheng654325d2012-03-07 21:13:49 -080023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080024 BDI_pdflush,
25 BDI_write_congested,
26 BDI_read_congested,
27 BDI_unused,
Ben Cheng654325d2012-03-07 21:13:49 -080028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080029};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080030typedef int (congested_fn)(void *, int);
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080031struct backing_dev_info {
32 unsigned long ra_pages;
Ben Cheng654325d2012-03-07 21:13:49 -080033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080034 unsigned long state;
35 unsigned int capabilities;
36 congested_fn *congested_fn;
37 void *congested_data;
Ben Cheng654325d2012-03-07 21:13:49 -080038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080039 void (*unplug_io_fn)(struct backing_dev_info *, struct page *);
40 void *unplug_io_data;
41};
Elliott Hughesc95eb572013-01-29 18:15:55 -080042#define BDI_CAP_NO_ACCT_DIRTY 0x00000001
Ben Cheng654325d2012-03-07 21:13:49 -080043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesc95eb572013-01-29 18:15:55 -080044#define BDI_CAP_NO_WRITEBACK 0x00000002
45#define BDI_CAP_MAP_COPY 0x00000004
46#define BDI_CAP_MAP_DIRECT 0x00000008
47#define BDI_CAP_READ_MAP 0x00000010
Ben Cheng654325d2012-03-07 21:13:49 -080048/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesc95eb572013-01-29 18:15:55 -080049#define BDI_CAP_WRITE_MAP 0x00000020
50#define BDI_CAP_EXEC_MAP 0x00000040
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080051#define BDI_CAP_VMFLAGS (BDI_CAP_READ_MAP | BDI_CAP_WRITE_MAP | BDI_CAP_EXEC_MAP)
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080052#if defined(VM_MAYREAD) && BDI_CAP_READ_MAP != (VM_MAYREAD || BDI_CAP_WRITE_MAP != (VM_MAYWRITE || BDI_CAP_EXEC_MAP != VM_MAYEXEC))
Ben Cheng654325d2012-03-07 21:13:49 -080053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080054#error please change backing_dev_info::capabilities flags
55#endif
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080056#define bdi_cap_writeback_dirty(bdi) (!((bdi)->capabilities & BDI_CAP_NO_WRITEBACK))
57#define bdi_cap_account_dirty(bdi) (!((bdi)->capabilities & BDI_CAP_NO_ACCT_DIRTY))
Ben Cheng654325d2012-03-07 21:13:49 -080058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080059#define mapping_cap_writeback_dirty(mapping) bdi_cap_writeback_dirty((mapping)->backing_dev_info)
60#define mapping_cap_account_dirty(mapping) bdi_cap_account_dirty((mapping)->backing_dev_info)
61#endif