1*cf5a6c84SAndroid Build Coastguard Worker /* partprobe.c - Tell the kernel about partition table changes 2*cf5a6c84SAndroid Build Coastguard Worker * 3*cf5a6c84SAndroid Build Coastguard Worker * Copyright 2014 Bertold Van den Bergh <[email protected]> 4*cf5a6c84SAndroid Build Coastguard Worker * 5*cf5a6c84SAndroid Build Coastguard Worker * see http://man7.org/linux/man-pages/man8/partprobe.8.html 6*cf5a6c84SAndroid Build Coastguard Worker 7*cf5a6c84SAndroid Build Coastguard Worker USE_PARTPROBE(NEWTOY(partprobe, "<1", TOYFLAG_SBIN)) 8*cf5a6c84SAndroid Build Coastguard Worker 9*cf5a6c84SAndroid Build Coastguard Worker config PARTPROBE 10*cf5a6c84SAndroid Build Coastguard Worker bool "partprobe" 11*cf5a6c84SAndroid Build Coastguard Worker default y 12*cf5a6c84SAndroid Build Coastguard Worker help 13*cf5a6c84SAndroid Build Coastguard Worker usage: partprobe DEVICE... 14*cf5a6c84SAndroid Build Coastguard Worker 15*cf5a6c84SAndroid Build Coastguard Worker Tell the kernel about partition table changes 16*cf5a6c84SAndroid Build Coastguard Worker 17*cf5a6c84SAndroid Build Coastguard Worker Ask the kernel to re-read the partition table on the specified devices. 18*cf5a6c84SAndroid Build Coastguard Worker */ 19*cf5a6c84SAndroid Build Coastguard Worker 20*cf5a6c84SAndroid Build Coastguard Worker #include "toys.h" 21*cf5a6c84SAndroid Build Coastguard Worker do_partprobe(int fd,char * name)22*cf5a6c84SAndroid Build Coastguard Workerstatic void do_partprobe(int fd, char *name) 23*cf5a6c84SAndroid Build Coastguard Worker { 24*cf5a6c84SAndroid Build Coastguard Worker if (ioctl(fd, BLKRRPART, 0)) perror_msg("ioctl failed"); 25*cf5a6c84SAndroid Build Coastguard Worker } 26*cf5a6c84SAndroid Build Coastguard Worker partprobe_main(void)27*cf5a6c84SAndroid Build Coastguard Workervoid partprobe_main(void) 28*cf5a6c84SAndroid Build Coastguard Worker { 29*cf5a6c84SAndroid Build Coastguard Worker loopfiles(toys.optargs, do_partprobe); 30*cf5a6c84SAndroid Build Coastguard Worker } 31