In Eiruvin 53b on the top of the page, R' Yochanan says that Hashem forgave Shaul for the crime of killing Nov the city of Kohanim.
All the previous comments saying he was a tsadik and was allowed to kill them are not upheld by this Gemoro. I haven't seen a comment mentioning this. It seems his death in the battle was his atonement. Will give a much longer post about this later, exactly what sin he was being forgiven for. His sins included not killing Amalek, and going to the sorcerer, how does rashi know which one it is? And also we see in the time of David's kingship his sin was not yet forgiven since David had to kill many of Saul's children to appease the Givonim. He was forgiven because he went to war knowing he would be killed. The midrash vayikro 27:6 seems to imply this.
I will go into it in quite some detail. It is very interesting but possibly written too briefly.
The rdak says like rashi that it was the sin of NOV but asks that we never find it mentioned in the posuk that it was considered a sin against him. Only that he killed the givonim not the kohanim. And he says that most likely the kohanim deserved death although the posuk doesnt tell us why.
The maharsha says it must have been the sin of NOV because he has already been punished for not killing amalek by having David made king instead of his son.
In midrash vayikra 26:7 and the meforshim it says that saul had five or six sins including killing the kohanim and not waiting for shmuel for seven days.
The ben yehoyodo says it carries on from the earlier gemoro that saul made 'mistakes' in learning and halocho. That was referring to not killing the animals of amalek saying they hadnt sinned, therefore this is the sin involved not like rashi.
The gaon yaakov in a similar vein also says it carries on from the earlier gemoro that he made mistakes in halacha. Therefore david became king, therefore he had to run away from him therefore NOV gave him to eat and therefore he killed NOV. And the sin being NOV.
The chida in pesach einaim has it much simpler. Again a mistake in halacha but a different one. When david went to NOV he used the urim v'tumim which saul held are only allowed to be used by a king therefore he killed NOV. But this was a mistake in halacha since they can be used by others at certain times. So the sin was NOV and the previous gemoro also NOV.
Why the gemoro says he was forgiven when his children has still to suffer and be killed, they say he wasnt totally forgiven only enough to be able to join shmuel in heaven. Or one can say he was only forgiven for the kohanim but not the givonim.
This post is of course quite a shortened version of what ought to be a comprehensive daf yomi shiur.
I must add that I dont understand the rdak properly. One of his proofs that the kohanim 'deserved' it and saul was not to blame is since we dont see that their death was avenged like with the givonim. But the reason for that is because he was forgiven, because he went into battle knowing he would be killed. Maybe he means that if it was a real sin that wouldnt be enough.