13c827367444ee418f129b2c238299f49d3264554Jarkko Poyry/* freeramdisk.c - Free all memory allocated to ramdisk 23c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * 33c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * Copyright 2014 Vivek Kumar Bhagat <vivek.bhagat89@gmail.com> 43c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * 53c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * No Standard 63c827367444ee418f129b2c238299f49d3264554Jarkko Poyry 73c827367444ee418f129b2c238299f49d3264554Jarkko PoyryUSE_FREERAMDISK(NEWTOY(freeramdisk, "<1>1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT)) 83c827367444ee418f129b2c238299f49d3264554Jarkko Poyry 93c827367444ee418f129b2c238299f49d3264554Jarkko Poyryconfig FREERAMDISK 103c827367444ee418f129b2c238299f49d3264554Jarkko Poyry bool "freeramdisk" 113c827367444ee418f129b2c238299f49d3264554Jarkko Poyry default y 123c827367444ee418f129b2c238299f49d3264554Jarkko Poyry help 133c827367444ee418f129b2c238299f49d3264554Jarkko Poyry usage: freeramdisk [RAM device] 143c827367444ee418f129b2c238299f49d3264554Jarkko Poyry 153c827367444ee418f129b2c238299f49d3264554Jarkko Poyry Free all memory allocated to specified ramdisk 163c827367444ee418f129b2c238299f49d3264554Jarkko Poyry*/ 173c827367444ee418f129b2c238299f49d3264554Jarkko Poyry 183c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "toys.h" 193c827367444ee418f129b2c238299f49d3264554Jarkko Poyry 203c827367444ee418f129b2c238299f49d3264554Jarkko Poyryvoid freeramdisk_main(void) 213c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{ 223c827367444ee418f129b2c238299f49d3264554Jarkko Poyry int fd; 233c827367444ee418f129b2c238299f49d3264554Jarkko Poyry 243c827367444ee418f129b2c238299f49d3264554Jarkko Poyry fd = xopen(toys.optargs[0], O_RDWR); 253c827367444ee418f129b2c238299f49d3264554Jarkko Poyry xioctl(fd, BLKFLSBUF, toys.optargs[0]); 263c827367444ee418f129b2c238299f49d3264554Jarkko Poyry if (CFG_TOYBOX_FREE) xclose(fd); 273c827367444ee418f129b2c238299f49d3264554Jarkko Poyry} 283c827367444ee418f129b2c238299f49d3264554Jarkko Poyry