Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds timestamped polling #174

Open
wants to merge 14 commits into
base: main
Choose a base branch
from
Open

Adds timestamped polling #174

wants to merge 14 commits into from

Commits on Sep 12, 2024

  1. Replaces #define around msr_devnode with _Generic

    The type of (((struct class *)0)->devnode) has changed at least
    twice in the mainline kernel.  Coding based on mainline kernel
    versions has repeatedly run into the problem of distros backporting
    features to older kernels.
    
    Solved here using _Generic and multiple function definitions.
    rountree-alt committed Sep 12, 2024
    Configuration menu
    Copy the full SHA
    46937a0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5531dbf View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    22352d7 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9755d66 View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2024

  1. Fixes several missing-prototype warnings.

    Compiling under Linux 6.9.9 and gcc 10.3.1.
    rountree-alt authored and rountree committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    d4aa1ea View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c92ec6b View commit details
    Browse the repository at this point in the history
  3. Fix inadvertent typo

    rountree-alt authored and rountree committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    03f687a View commit details
    Browse the repository at this point in the history
  4. Single source of truth for version information.

    msr_version.h
    	#defines for major, minor, and patch versions of msr-safe
    	as well as helper macros to generate _u32 and string
    	representation.
    
    Makefile
    	Removes CURRENT_VERSION and -DVERSION from build.
    	msrsave now gets the version string from msr_version.h
    
    msrsave_main.c
    msr_entry.c
    	Now #includes msr_version.h and uses MSR_SAFE_VERSION_STR
    
    msr_safe.h
    	Repurposes a bit of struct padding to hold a _u32-format
    	msr-safe version number.
    
    README.md
    	Updates documentation of struct msr_batch_array to note
    	the new version field.  Explains how this will remain
    	unused in the 1.x.y series.  Version 2.x.y will begin
    	checking this version field to make sure what the user
    	compiled against is the same version as the loaded
    	kernel module.  This is necessary due to anticipated
    	batch API changes in version 2.0.0.
    
    Tested on serif (Ubuntu 24.04.1 LTS, Linux 6.8.0, gcc 13.2.0)
    rountree committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    e879ed2 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2deb36f View commit details
    Browse the repository at this point in the history
  6. Performs version checking.

    README.md
    Describes new error (ENOPROTOOP) that results from a mismatch
    between the loaded kernel module and what's in the batch request.
    
    examples/example.c
    Updated to use versioning.
    
    msr_batch.c
    Checks for correct version as part of batch request parsing.
    
    msr_version.h
    Bumped version to 2.0.0.
    
    Tested on serif.
    rountree committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    31b653b View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    78fc222 View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2024

  1. Adds polling.

    README.md
    Added desription of new msr_batch_op struct.
    Removed example code that no longer compiles in v2.0.
    
    examples/example.c
    Modified to be working example of polling via batch.
    
    msr-smp.c
    Replaced previous read/write code with read/write/poll + timestamp
    
    msr_batch.c
    Small patch to keep allowlist functional.
    
    msr_safe.h
    New op struct.
    rountree committed Sep 14, 2024
    Configuration menu
    Copy the full SHA
    ae69acd View commit details
    Browse the repository at this point in the history

Commits on Sep 21, 2024

  1. Configuration menu
    Copy the full SHA
    51890be View commit details
    Browse the repository at this point in the history
  2. Removes notes

    rountree committed Sep 21, 2024
    Configuration menu
    Copy the full SHA
    b676931 View commit details
    Browse the repository at this point in the history