update kernel functions