/* * uledmon.c * * This program creates a new userspace LED class device and monitors it. A * timestamp and brightness value is printed each time the brightness changes. * * Usage: uledmon * * is the name of the LED class device to be created. Pressing * CTRL+C will exit. */ #include #include #include #include #include #include int main(int argc, char const *argv[]) { struct uleds_user_dev uleds_dev; int fd, ret; int brightness; struct timespec ts; if (argc != 2) { fprintf(stderr, "Requires argument\n"); return 1; } strncpy(uleds_dev.name, argv[1], LED_MAX_NAME_SIZE); uleds_dev.max_brightness = 100; fd = open("/dev/uleds", O_RDWR); if (fd == -1) { perror("Failed to open /dev/uleds"); return 1; } ret = write(fd, &uleds_dev, sizeof(uleds_dev)); if (ret == -1) { perror("Failed to write to /dev/uleds"); close(fd); return 1; } while (1) { ret = read(fd, &brightness, sizeof(brightness)); if (ret == -1) { perror("Failed to read from /dev/uleds"); close(fd); return 1; } clock_gettime(CLOCK_MONOTONIC, &ts); printf("[%ld.%09ld] %u\n", ts.tv_sec, ts.tv_nsec, brightness); } close(fd); return 0; } -private-remove net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Axboe <axboe@fb.com>2017-01-27 11:56:06 -0700
committerJens Axboe <axboe@fb.com>2017-01-27 11:56:06 -0700
commitc14024dbb156c8392908aaa822097d27c6af8ec8 (patch)
tree02f6ffa664b16bd76750c05f62708a518de2acdc /tools/testing
parent08965c2eba135bdfb6e86cf25308e01421c7e0ce (diff)
parent3b4f18843e511193e7eb616710e838f5852e661d (diff)
Merge branch 'stable/for-jens-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-linus
Konrad writes: Please pull in your 'for-linus' branch two little fixes for Xen block front: One fix is for handling the XEN_PAGE_SIZE != PAGE_SIZE (4KB vs 64KB on ARM for example) mishandling while the other is fixing the accounting for the configuration changes.
Diffstat (limited to 'tools/testing')