STRUCT DEV_DAX(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct dev_dax ✨

okay so this is a page straight out of the Kernel API Manual, and it's all about struct dev_dax β€” no cap, it's a whole vibe. πŸ¦‹


🌸 NAME 🌸

struct dev_dax β€” the instance data for a subdivision of a dax region, plus the data while the device is activated in the driver. literally the little glow-up corner of a dax region that keeps its own receipts πŸ’–


✨ SYNOPSIS ✨

struct dev_dax {
    struct dax_region *region;
    struct dax_device *dax_dev;
    u64 cached_size;
    unsigned int align;
    int target_node;
    bool dyn_id;
    int id;
    struct ida ida;
    struct device dev;
    struct dev_pagemap *pgmap;
    bool memmap_on_memory;
    int nr_range;
    struct dev_dax_range *ranges;
};

πŸŽ€ Members πŸŽ€

okay bestie, field-by-field, and yes we're doing all of them πŸ‘‘

  • region β€” parent region, the main character it belongs to πŸ’«
  • dax_dev β€” core dax functionality
  • cached_size β€” size of daxdev cached by fsdev_dax
  • align β€” alignment of this instance
  • target_node β€” effective numa node if dev_dax memory range is onlined
  • dyn_id β€” is this a dynamic or statically created instance
  • id β€” ida allocated id when the dax_region is not static
  • ida β€” mapping id allocator
  • dev β€” device core
  • pgmap β€” pgmap for memmap setup / lifetime (driver owned)
  • memmap_on_memory β€” allow kmem to put the memmap in the memory
  • nr_range β€” size of ranges
  • ranges β€” range tuples of memory used

πŸ¦‹ SEE ALSO πŸ¦‹

go peek at these, iykyk πŸ‘€

  • Kernel file ./drivers/dax/dax-private.h struct dax_region(9), struct dax_mapping(9), struct dev_dax_range(9)

and that's the whole thing, bestie β€” periodt πŸ’…βœ¨

source squad, say hi: this one lives in ./drivers/dax, it's dated October 2026, and the page itself is struct dev_dax(9). 🫢🌸
πŸ“¦ where this page comes from