Skip to content

Instantly share code, notes, and snippets.

@heiher
heiher / switch
Created March 31, 2020 13:40
NAS外置硬盘盒开关程序(NanoPi侧)
#!/bin/bash
if [ ! -e /sys/class/gpio/gpio33 ]; then
echo 33 > /sys/class/gpio/export
sleep 0.1
echo out > /sys/class/gpio/gpio33/direction
fi
if [ ! -e /sys/class/gpio/gpio35 ]; then
echo 35 > /sys/class/gpio/export
@heiher
heiher / ecryptfs-mount
Created March 9, 2020 15:18
eCryptfs mounting helper
#!/bin/bash
if [ "$#" -lt 2 ]; then
SRC=$1
DST=$1
else
SRC=$1
DST=$2
fi
@heiher
heiher / wdtd.c
Last active March 6, 2020 04:28
Loongson 7A Watchdog Timer Userspace Daemon
#define _GNU_SOURCE
#include <fcntl.h>
#include <sched.h>
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/mman.h>
#include <sys/types.h>
@heiher
heiher / epoll.c
Created August 18, 2019 02:02
Why the edge-triggered mode doesn't work for epoll file descriptor itself?
#include <stdio.h>
#include <unistd.h>
#include <sys/epoll.h>
int
main (int argc, char *argv[])
{
int efd[2];
struct epoll_event e;